我想用分號代替stdout
中的TAB
s,方法是從ZSH shell中運行sed
。sed替換文字TAB
我明白了一個可以正常(在其他shell?)使用方法:
somecommand | sed 's/\t/;/g'
然而,這並沒有爲我ZSH殼在FreeBSD下工作。 \t
與製表符不匹配。爲什麼是這樣?我也嘗試了多個反斜槓(最多5個)。
這並不工作:
somecommand | sed 's/[TAB]/;/g'
,其中[TAB]
是一個實際的TAB
字符數限制,通過輸入Ctrl-V
其次是我的鍵盤上的按鍵TAB
插入。
謝謝,這真的爲我清除了事情! – poplitea
@poplitea如果你的腳本只能在ksh93的,bash或zsh中運行(而不是其他SH變體,如pdksh程序,Bourne或灰),那麼你可以使用'$「S/\ t /; /」 g'其中shell執行反斜槓擴展,'sed'看到一個文字標籤字符。 – Gilles
@Gilles:太棒了!我知道$(),但不是$''替換。非常感謝,這使我很容易解決我的問題。儘管(?),你可能應該把它放在答案中而不是評論中。 – poplitea