Ele*_*reg 3 bash sed text-processing
如何从目录中的所有 .asc 文件中删除包含“=”和“历史”(始终大写)的行以及所有空行?
我认为它会是这样的:
for file in /media/linux/DATADISK/*.asc
do
sed '/=/d'
sed '/HISTORY/d'
done
Run Code Online (Sandbox Code Playgroud)
αғs*_*нιη 10
一次性完成所有操作。
sed -E '/=|HISTORY|^$/d' /media/linux/DATADISK/*.asc
Run Code Online (Sandbox Code Playgroud)
除了删除那些只包含制表符/空格的行之外,替换^$
为^[[:blank:]]*$
,或者^[[:blank:]]*\r?$
如果您的文件的换行符可以是 Windows-Style 则使用\r\n
。
就地更新更改,添加-i
选项,man sed
有关详细信息,请参阅。