我需要从文件中删除特定的、精确的字符串。这被用作我正在实施的清理过程的一部分。问题是,有些变体与我要删除的特别精确的字符串相似,但不完全相同。
例如,以下是文件“sample”的示例:
tmp2
tmp3
tmp0
tmp1
tmp3
tmp3
tmp3
tmp1.1
tmp3
tmp2
tmp3
tmp1.2
tmp4
我只想删除“tmp1”,而不是“tmp1.1”或“tmp1.2”。
我正在使用单行 Perl 命令:
perl -i -nle 'print if !/tmp1/' ./sample
显然,单行脚本并不流畅。当然,它会删除“tmp1”,但是,它也会删除“tmp1.1”和“tmp1.2”。
有任何想法吗?