2011-12-21 59 views
0

我剛剛在遺留腳本中偶然發現了一些神祕的sed表達式。你能給我一些提示如何開始解碼嗎?解密/解釋sed單線程的一般幫助?

最好的事情是一些自動翻譯工具SED咒語英語,但對於近亞軍,我是(全部)sed命令的一些不錯的指標非常感謝。否則,我肯定對如何快速解決問題提供任何幫助非常感興趣(除了閱讀手冊封面以覆蓋...)。

邊注:正如你可能已經猜到了,我不想只是粘貼式在這裏,因爲我想能夠更容易和更快的下一次我在一些類似的線絆倒做噪聲......)

我會非常感謝幫助!

編輯:正則表達式本身並不是問題,順便說一下,我對他們已經夠好了。

+0

讓我得到這個權利:你想一般的方法能夠瘦特定編程語言的複雜性,而無需實際學習語言,並沒有對語言的諮詢任何衆所周知的導遊? – Johnsyweb 2011-12-23 20:06:36

+0

不,我不想學習語言,這是關鍵。另一方面,我必須儘快將一些腳本翻譯成更易讀的語言,如果將來有類似的情況,我希望能夠再次做到這一點。因此,對某種有意思的EBNF +語義參考更感興趣,而不是「你的第一個sed腳本」 - 就像敘述。 – akavel 2011-12-25 21:16:30

回答

2

我不認爲有自動工具可以'tranalte'sed命令爲英文。但是您可能需要檢查http://aurelio.net/sedsed/。它會幫助你理解一個sed腳本,它做什麼以及如何。無論如何,如果列舉一些例子會很好。

+0

嗯,這已經開始給我更多的信息了通過「--tokenize」重刑,但仍不知道在哪裏尋找更詳細的解釋。對於初學者來說,http://www.gnu.org/software/sed/manual/sed.html上的手冊似乎也令人驚訝地有用,這歸功於相當好的縮進,但目前我仍然遇到一些問題。 – akavel 2011-12-21 09:58:30

+0

接受。如果沒有更好的答案,這一個特別有用,因爲我沒有在谷歌中陷入困境,它幫助我解碼原始表達的一個困難部分。 OTOH,在某些其他複雜的腳本中,sedsed對我來說確實失敗:/ ...但是,stil,非常感謝! – akavel 2011-12-25 21:10:26

0

我發現"Sed One-Liners Explained"是非常翔實和樂趣。

+1

從我的理解,他與傳統的腳本問題,但不是經典的沉渣 - oneliners,或者我誤會他了...... :( – Kent 2011-12-21 09:32:13

+0

是的,作爲@Kent說。 – akavel 2011-12-21 09:35:47

+0

這很公平。我的回答表示,雖然。如果你的工作通過這些,您將更好地理解簡單的單線程和掌握晦澀難懂的內容,使您更容易處理遺留系統。 – Johnsyweb 2011-12-21 19:16:57

1

Unix的果殼由羅賓斯對SED一個非常漂亮的一章。清晰簡潔的命令描述。

+0

它是免費在線提供的,還是什麼?我不想在這個問題上投入太多。 – akavel 2011-12-22 08:28:15

+0

我不這麼認爲。但是幾乎所有的sed章節都可以在[scribd]的預覽中看到(http://www.scribd.com/doc/15490498/Unix-in-a-Nutshell)。嘗試第618頁。 – 2011-12-22 09:06:05

1

你最好的選擇是深入學習sed語言。不幸的是,sed文檔更像是一個參考。這裏的a nice step by step guide不需要太長的時間閱讀。

+0

只需提醒一下,我明確寫道,我對解決方案感興趣,「除了閱讀手冊封面」_。也就是說,你鏈接的頁面肯定是一個有價值的資源,我已經使用了它,它幫助我理解了一些像分支這樣的高級命令。 – akavel 2011-12-22 08:18:02