pipe道命令一起

我需要一起input2个命令,第一个命令将input​​文件中的XYZreplace为“,”,然后我需要做另一个replace。 尝试以下失败。

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

第二个命令期望从文件input的时候,将两个命令连接在一起的正确方法是什么?

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

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

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

 tr 'A' 'B' < input_file | tr 'C' 'D' | tr 'E' 'F' | tr 'Z' 'Q' 

如果你只是想删除字符,那么-d标志为tr将不需要替换为''

 tr -d 'xyz' < file 

将显示标准输出中的所有x的y和z的文件内容