我有一个包含许多同名行的纯文本文件:
./intuit
./intuit/apac-trial13
./safenetdatasecurityisraelltd3
./safenetdatasecurityisraelltd3/ldk-emea-eval
我想从所有行中删除 ./
还有
./intuit
./safenetdatasecurityisraelltd3
借助任何 unix 命令,我可以从所有行和没有子目录的行中删除 ./
最佳答案
$ sed -n 's@^\./@@; /\// p' test.txt
intuit/apac-trial13
safenetdatasecurityisraelltd3/ldk-emea-eval
我们在那里做了什么? sed -n
表示“除非我这样说,否则不要打印”。然后,s@^\./@@
删除前导 ./
(如果存在)。最后,我们用 /
匹配任何行(适当转义),并用 p
打印它。
关于linux - 我们如何按照特定模式从文件中的行中删除字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27855220/