我需要一起管2個命令,第一個命令將輸入文件中的XYZ替換爲「,」,然後我需要做另一個替換。未成功嘗試以下內容。pipe命令一起
tr 'XYZ' ',' <input_file | xargs tr ',' ''
什麼管道兩個命令在一起,以正確的方式,其中第二個命令從一個文件需要輸入?
我需要一起管2個命令,第一個命令將輸入文件中的XYZ替換爲「,」,然後我需要做另一個替換。未成功嘗試以下內容。pipe命令一起
tr 'XYZ' ',' <input_file | xargs tr ',' ''
什麼管道兩個命令在一起,以正確的方式,其中第二個命令從一個文件需要輸入?
tr 'XYZ' ',' <input_file | tr ',' ''
管道符號|
連接第一命令的標準輸出到第二命令的標準輸入。 tr
是一個過濾器,這是一個程序,它希望它的輸入出現在標準輸入流上並在標準輸出流上發出其結果。
可以,只要你想盡可能多的這些連接在一起:
tr 'A' 'B' < input_file | tr 'C' 'D' | tr 'E' 'F' | tr 'Z' 'Q'
'cat input_file | tr'XYZ'','| tr','''' –
[無用的'cat'獎勵。](http://partmaps.org/era/unix/award.html#cat) –
如果你認爲'cat'總是無用的。在這種情況下,cat使命令更具可讀性,從左到右管道一直向下。 –
如果你只是想刪除的字符,那麼-d標誌以TR將這樣做沒有必要替換爲''
tr -d 'xyz' < file
將在stdout中顯示所有x的y和z的文件內容
我可能會誤解,但爲什麼兩次調用'tr'?爲什麼不做'tr'XYZ''''? – squiguy
@squiguy - 考慮輸入'A,B,C XYZ D' –