已经有下面的文档
<a id="" href=""></a>
<a id="" href=""></a>
<a id="" href=""></a>
系统剪贴板里面有如下内容:
home
help
variables
需要在每行的第15个位置处插入,形成下面的格式
<a id="" href="">home</a>
<a id="" href="">help</a>
<a id="" href="">variables</a>
如果vim不行,用awk可以吗?
这个答复不行,
先输入
home
help
variables
然后使用 s
命令
输入 :%s/^/<a id="" href="">/g
回车
再输入 :%s#$#</a>#g
回车
如果我进一步,需要从这个基础上
<a id="" href="">home</a>
<a id="" href="">help</a>
<a id="" href="">variables</a>
形成下面的
<a id="home" href="">home</a>
<a id="help" href="">help</a>
<a id="variables" href="">variables</a>
你又如何办?
再走远一点
<a id="home" href="home.html">home</a>
<a id="help" href="help.html">help</a>
<a id="variables" href="variables.html">variables</a>
你如何快速搞定??
迷茫2017-05-16 16:35:48
先输入
home
help
variables
然后使用 s
命令
输入 :%s/^/<a id="" href="">/g
回车
再输入 :%s#$#</a>#g
回车
PHP中文网2017-05-16 16:35:48
对于第一个需求,不需要替换,可以这样实现:
图片比较大,如果加载不出来,这里是原地址
操作顺序:
光标移到第一行的 "" 的 "<" 位置,Ctrl+v
进入列选择模式,jj$
选中所有的 </a>
,然后 d
光标移至 "home" 那一行,Shift + v
进入行选择模式,jj
选中三行,然后 :right
,回车
$
把光标移至 "home" 结尾,按 p
粘贴
gv
选中所有,然后 :left
,回车
光标在第一行 "home" 的 "h" 上,Ctrl + v
进入列选择模式,jj$y
复制三行
gg$
光标移至第一行末尾,然后 p
第二个需求同理,剪切一下 id=""
第二个引号以及后面内容就行了。第三个需求,暂时想不出更好的方法
PHP中文网2017-05-16 16:35:48
可以用 Bash+Sed可以处理,不过这样处理就像是用程序语言处理一样
#! /bin/bash
i=1
rm sd.f
cat sd.in | while read LINE
do
echo "${i}s/>/>${LINE}/" >>sd.f
#echo "${i}s/id=\"/id=\"${LINE}/" >>sd.f #第二次处理
#echo "${i}s/ref=\"/ref=\"${LINE}.html/" >>sd.f #第三次处理
((i++))
done
#cat sd.f
sed -f sd.f test.txt
备注:test.txt是要处理的源文件,sd.f是用程序生成的存放sed处理命令的文件。sd.in是存放的变量值,即home,help……三个值