如何使用shell编程在文件中添加或删除单词[persistence]
下面的行。我想添加一行,如果[persistence]
存在并且我的行尚未存在。如果我的行已经存在,我想删除它并停止脚本。
例如:我想在myname@satvik
下面添加[persistence]
,以便它看起来像:
[persistence]
myname@satvik
如果此行已存在
[persistence]
myname@satvik
然后我想从文件中删除行myname@satvik
。
答案 0 :(得分:0)
首先创建一个像replach.sh
这样的文件并放在行
#!/bin/ksh
sed "/^.*\[persistence\]/s//&\\
'myname@satvik'/" test.txt > temp.txt
sed '$!N; /^\(.*\)\n\1$/!P; D' temp.txt > test.txt
现在更改文件权限
chmod 777 replach.sh
现在运行此脚本
./replach.sh
要再次删除新添加的行,请执行以下操作: -
sed 's/myname@satvik//g;/^\s*$/d' test.txt > temp.txt
mv temp.txt test.txt
#bring back to original file