ima*_*ast 2 linux sed text-processing
例如:
文件 A 包含 20 行,我删除了前 10 行sed -i 1,10d A.txt
我应该写什么命令来将这 10 行删除的行打印到文件 B 中?
我尝试过sed -i 1,10d A.txt >> B.txt哪个不起作用。
使用sed和sed脚本
1,10{
w otherfile
d
}
Run Code Online (Sandbox Code Playgroud)
这会将第 1 行到第 10 行写入文件otherfile,同时从输入中删除它们。
对原始文件进行就地编辑(sed此处使用 GNU):
sed -i '1,10{w B.txt
d}' A.txt
Run Code Online (Sandbox Code Playgroud)
需要换行符来分隔文件名。或者,
sed -i -e '1,10{w B.txt' -e 'd}' A.txt
Run Code Online (Sandbox Code Playgroud)