下面是我輸入如何在Unix中添加分隔符後的換行符?
54.243.94.244, 54.243.113.63
,我要像下面的出來,
54.243.94.244
54.243.113.63
即逗號後,我需要添加新行。 如何在Unix中實現它?請建議一些命令。
下面是我輸入如何在Unix中添加分隔符後的換行符?
54.243.94.244, 54.243.113.63
,我要像下面的出來,
54.243.94.244
54.243.113.63
即逗號後,我需要添加新行。 如何在Unix中實現它?請建議一些命令。
另一種選擇是tr
tr ',' '\n'
tr「,」「\ n」IP_withoutTrim.txt> IP_Trim.txt 它不適用於我的錯誤! tr:0653-712選項和字符串參數的組合不合法。 用法:tr [ - [c | C] | - [c | C] ds | - [c | C] s | -ds | -s] [-A] String1 String2 tr { - [c | C] d | - [c | C] s | -d | -s} [-A] String1 – 2013-04-10 04:20:59
明白了..謝謝:) cat IP_withoutTrim.txt | tr',''\ n'> IP_Trim.txt 這工作 – 2013-04-10 04:24:55
@ GanzRicanz好交易。只是提示,你可以避開'cat'並重新使用重定向。 'tr',''\ n'
sed
將這樣的伎倆:
$ echo '54.243.94.244, 54.243.113.63' | sed 's/, /\n/g'
54.243.94.244
54.243.113.63
sed命令s/, /\n/g
將取代逗號緊跟在換行符輸入一個空格的所有匹配。
嗨,這是行不通的,我得到如下輸出, 54.243.94.244n54.243.113.63 – 2013-04-10 04:06:51
@GanzRicanz:你在哪個Unix平臺上工作?有些版本的'sed'與'\ n'有問題。另外,你是否使用單引號? – 2013-04-10 04:12:10
謝謝Scott,我的平臺不支持sed。我試過它的工作。謝謝你:) – 2013-04-10 04:26:03
一個簡單的例子是
VAR1=a
VAR1="$VAR1"$'\n'b
echo "$VAR"
這將使輸出像
a
b
在'bash'中可以使用,而不是所有的shell。它也沒有解決你具有'VAR =「54.243.94.244,54.243.113.63」'的情況,並且你想要插入換行符代替逗號和空格。 – 2013-04-10 04:13:55
你想逗號後換行,或者你希望它取代逗號?您的數據似乎用換行符替換逗號(和空白)。 – 2013-04-10 04:11:21