我需要在我決定的分隔符後返回所有內容,但仍不完全知道如何使用sed。 我需要做的是:Bash Shell - 第二次出現特定字符後的返回子字符串
$ echo "ABC DE,FG_HI J,123.XYZ-A1,DD/MM/YYYY HH24:MI:SS,,," \
| sed <some regexp>
在這個例子中返回的應該是(子)一切第二個逗號後:
123.XYZ-A1,DD/MM/YYYY HH24:MI:SS,,,
我可以這樣用切做到這一點: echo "ABC DE,FG_HI J,123.XYZ-A1,DD/MM/YYYY HH24:MI:SS,,," | cut -d',' -f 2
但我已經被告知剪切速度比sed慢...
有些古魯人有他們(並且想要:))請給我幾分鐘的時間,並給我建議? 謝謝! 獅子座
我不知道'cut'比'在這種特殊情況下sed'慢,但我可以告訴你,'cut'並不比'sed'慢'「,足以產生任何實際的區別。如果速度那麼重要,你不會在Bash處理這個,對吧? – 2013-03-14 11:48:03
感謝Will,我會在哪裏處理它,然後如果速度是最重要的? – Leo 2013-03-14 11:51:33
如果速度真的很重要,你可以用C編寫它,它可能比使用'cut'快0.002%,這反過來會比'sed'快得多。 – 2013-03-14 12:03:15