基於定界符我有以下文本行的文件的文本文件:分割使用Linux命令行
jeremy , thomas , 123
peter , paul , 456
jack , jill , 789
我想刪除所有數據除中心項目。例如與包含文件結束了:
thomas
paul
jill
我已經嘗試了這麼多awk的模式我的大腦正在迅速增長。任何幫助,將不勝感激。
基於定界符我有以下文本行的文件的文本文件:分割使用Linux命令行
jeremy , thomas , 123
peter , paul , 456
jack , jill , 789
我想刪除所有數據除中心項目。例如與包含文件結束了:
thomas
paul
jill
我已經嘗試了這麼多awk的模式我的大腦正在迅速增長。任何幫助,將不勝感激。
嘗試awk
:
awk -F '[[:space:]]*,[[:space:]]*' '{print $2}' input.txt
+1爲正確的解決方案。 – 2013-03-27 01:24:03
這似乎不適用於我,但使用實際空格字符 – Necrolyte2 2013-03-27 02:02:28
@ Necrolyte2,那麼您必須使用舊的,破損的awk(Solaris上的/ bin/awk)。使用不同的awk,例如Solaris或nawk上的/ usr/xpg4/bin/awk。 – 2013-03-27 13:36:00
試試這個
cat <filepath> | tr -d ' ' | cut -d',' -f2
我想這是假設你不強迫自己使用awk – Necrolyte2 2013-03-27 00:34:20
不,我不是強迫自己使用awk,它似乎是正確的工具。現在我意識到我離基地很遠。感謝您的簡單解決方案。 – user1488639 2013-03-27 00:38:00
我不會說你離開基地。 kev有一個很好的純awk解決方案。 – Necrolyte2 2013-03-27 00:39:53
的grep環顧四周:
grep -Po '(?<=,).*(?= ,)' file
試試這個:
$ cat (your file)| cut -d ',' -f2 > (new file)
例如:
$ cat /home/file1.txt | cut -d ',' -f2 > /home/file2.txt
爲什麼不只是'剪切'? – 2013-03-27 00:33:03
@MattBall因爲cut不允許你指定一個多字符的字符串,比如','作爲字段分隔符。 – 2013-03-27 01:23:31