我有一个txt文件,我想在以下几点使用sed命令:
- 对于文件中的前 5 首歌曲,将歌曲名称更改为大写。我的解决方案是:
cat file.txt | sed -r 's/.*/\U&/'
- 对于包含“Font1”的行,附加“is粗体”行。我的解决方案是:
cat file.txt | sed 'Font1 a\ is bold'
希望您明白我的意思,并提前致谢。
答案1
您应该将地址添加到您的命令中:
sed -r '1,5 s/.*/\U&/; /Font1/ a\ is bold' file.txt
这指定第一个命令的地址范围 line1 到 5,以及Font1
第二个命令匹配的行。请注意,Font1
前五行将首先被转换,因此不会与第二个地址定义匹配。顺便说一句,sed
它能够自行读取文件,不需要cat
.而且,如您所见,所有命令都可以放入一个sed
脚本中。