【发布时间】:2018-05-19 20:39:09
【问题描述】:
我有一个包含 $string 的文本文件。我如何使用 sed 创建一个新的 txt 文件而不出现所有 $string ?
【问题讨论】:
我有一个包含 $string 的文本文件。我如何使用 sed 创建一个新的 txt 文件而不出现所有 $string ?
【问题讨论】:
您可以使用以下sed 命令将所有出现的字符串变量替换为空字符串'' 并将输出重定向到新的输出文件。
sed "s/$string//g" input_file > output_file
或者您可以使用以下sed 命令:
sed -i.bkp "s/$string//g" file
直接在作为参数传递的文件内工作,-i.bkp 选项将自动创建带有扩展名.bkp 的备份文件,(在上面的示例中为file.bkp),如果不需要备份,只需使用-i
最后但同样重要的是,您的$string 变量不应包含任何斜杠/,如果有的话,您应该使用\ 将它们全部转义。您可以创建一个函数来执行此任务。
【讨论】: