已經(jīng)有下面的文件
<a id="" href=""></a>
<a id="" href=""></a>
<a id="" href=""></a>
系統(tǒng)剪貼簿裡面有以下內(nèi)容:
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
回車
如果我進一步,需要從這個基礎(chǔ)上
<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>
你如何快速搞定??
小伙看你根骨奇佳,潛力無限,來學(xué)PHP伐。
先輸入
home
help
variables
然後使用 s
命令
輸入 :%s/^/<a id="" href="">/g
回車
再輸入 :%s#$#</a>#g
回車
對於第一個需求,不需要替換,可以這樣實現(xiàn):
圖片比較大,如果載入不出來,這裡是原地址
操作順序:
遊標(biāo)移到第一行的 "" 的 "Ctrl+v 進入列選擇模式,jj$
選中所有的 </a>
,然后 d
遊標(biāo)移至 "home" 那一行,Shift + v
進入行選擇模式,jj
選中三行,然后 :right
,回車
$
把光標(biāo)移至 "home" 結(jié)尾,按 p
貼
gv
選中所有,然后 :left
,回車
遊標(biāo)在第一行 "home" 的 "h" 上,Ctrl + v
進入列選擇模式,jj$y
複製三行
gg$
光標(biāo)移至第一行末尾,然后 p
第二個需求同理,剪切一下 id=""
第二個引號以及後面內(nèi)容就行了。第三個需求,暫時想不出更好的方法
可以用 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是用程式產(chǎn)生的存放sed處理指令的文件。 sd.in是存放的變數(shù)值,即home,help…三個值