看板 Linux 關於我們 聯絡資訊
※ 引述《thisgo (尋夢園)》之銘言: : 版友好 : 有個grep特殊字元的問題想請教 : Q: : 若想在檔案裡 搜尋特定字串如右 ~!@#$%^&*()_+ {}[]|\:";'<>?, /AZ : 假設有一個隨機檔案data.txt內容是 : AA="XXX223" : BB=a132423davqef1 : CC='OOOOOOOO' : DD="~!@#$%^&*()_+ {}[]|\:";'<>?, /AZ" : EE=e12eee eqwf 恕刪 我試了幾個方法,單引號跟雙引號遇到的問題不同 cat data.txt| grep '~!@#$%^&\*()\_+ {}\[\]|\\:";'"'"'<>?, /AZ' ^^^ 用了另一組雙引號把單引號包起來 cat bb| grep "~\!@#$%^&\*()\_+ {}\[\]|\\\\:\";'<>?, /AZ" ^^^^ 雙引號中的反斜線的雙重escape 我的 /bin/sh 是 dash 我測試 bash 結果也是一樣的 關鍵應該是在 grep grep 版本是 2.10 https://www.dropbox.com/s/nxrhrcl6ljf6g4b/bb.png
-- my blog: http://kenshinnn.blogspot.com operation system : Ubuntu GNU/linux window manager : Gnome -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.147.46.141 ※ 文章網址: http://www.ptt.cc/bbs/Linux/M.1413474881.A.E8D.html
thisgo: 謝謝回覆 可能是grep版本造成 明天回工作崗位做確認 感謝 10/17 00:13
thisgo: 今天試了你提到的方法 是可行的 謝謝你 10/17 22:47