我有个问题。我需要在 txt 文件中添加一个文本行。这是我的文件:
- 000
- 001 测试1
- 002 测试2
- 003 测试3
- 004
- 005测试4
- 006测试5
- 007测试6
我需要使用 bash 脚本在第 000 行和第 004 行添加文本。
我能怎么做?谢谢大家!
我有个问题。我需要在 txt 文件中添加一个文本行。这是我的文件:
我需要使用 bash 脚本在第 000 行和第 004 行添加文本。
我能怎么做?谢谢大家!
您可以使用“sed”工具来实现您的目标。它对于操作文件非常强大。您可以使用如下命令:
sed -i /your/file.txt -e "s/000/000'\n'YOUR_NEW_LINE/"
sed -i /your/file.txt -e "s/004/004'\n'YOUR_NEW_LINE/"
(如果我理解正确,文件第一行开头有“000”,第五行开头有“004”)
awk 'NR==1{print $0, "Foo"}NR==5{print $0, "Bar"}'
这可以通过 while/read 循环在本机 bash 中完成:
while read num cmt; do
if [[ -z cmt ]] ; then
printf '%s test%s\n' "$num" "$num"
else
echo "$num $num"
fi
done <infile.txt >outfile.txt