删除|管道|之间的字符

Joh*_*262 1 text-processing

我有各种需要修改的文本文件

test.xyz|test3.abc|test5232.lop|filename.test|file.text|qwerty.bat|...
Run Code Online (Sandbox Code Playgroud)

我正在尝试自动化删除“test5232.lop”的过程,包括处理管道,如下所示:

test.xyz|test3.abc|filename.test|file.text|qwerty.bat|...
Run Code Online (Sandbox Code Playgroud)

如果可能,无需生成临时文件

Ste*_*uch 9

这看起来像是 的工作cut。告诉它分隔符是|,我们要指定要删除的字段,而不是要保留的字段 ( --complement) 并且我们要选择字段 3(在这种情况下要删除)。

代码:

 cut -d '|' --complement -f 3
Run Code Online (Sandbox Code Playgroud)

测试:

$ echo 'test.xyz|test3.abc|test5232.lop|filename.test|file.text|qwerty.bat|x' | cut -d '|' --complement -f 3
test.xyz|test3.abc|filename.test|file.text|qwerty.bat|x
Run Code Online (Sandbox Code Playgroud)