2

我需要将 2 个命令连接在一起,第一个命令将输入​​文件中的 XYZ 替换为“,”,然后我需要进行另一个替换。未成功尝试以下操作。

tr 'XYZ' ',' <input_file | xargs tr ',' ''

在第二个命令需要文件输入的情况下,将两个命令连接在一起的正确方法是什么?

4

2 回答 2

5
tr 'XYZ' ',' <input_file | tr ',' ''

管道符号|将第一个命令的标准输出连接到第二个命令的标准输入。tr是一个过滤器,它是一个程序,它期望其输入出现在标准输入流上,并将其结果输出到标准输出流上。

您可以根据需要将任意数量的这些连接在一起:

tr 'A' 'B' < input_file | tr 'C' 'D' | tr 'E' 'F' | tr 'Z' 'Q'
于 2013-01-15T19:24:14.360 回答
0

如果您只想删除字符,则 tr 的 -d 标志将执行此操作,无需替换为''

tr -d 'xyz' < file

将在标准输出上显示文件的内容,并删除所有 x 的 y 和 z

于 2013-01-15T19:33:55.867 回答