請教shellscript parse [ 1, 2 ] 中數字 - Linux

Table of Contents


echo "x [ 12, 34 ]"|sed 's/[^0-9]/ /g'|awk '{print$1==$2?"equal":"not equal"}'

想法: 將非數字全都替換成空白 再用awk抓出兩數字做比較 印出比對後的結果

盡可能用一行指令達到效果 僅適用於特殊情況 給你參考 :)


※ 引述《ptthidebear (= =)》之銘言:
: Hi~ 各位板大先進大家好
: 小弟對於shell script 不是很熟悉
: 最近剛好碰到一個問題是 想要用shell script parse 字串
: "asdfwer [ 1234, 3456 ]" 中的 1234 和 3456 出來
: 並且加以比對看數字是不是一樣
: 當然希望最好是一行 command就可以解決...|||Orz
: 不知道各位大大們對於這個問題有沒有什麼建議或是指教的
: 非常謝謝大家!!!

--

All Comments

Enid avatarEnid2011-10-21
感謝大大!看來我要好好加強sed awk 和re的知識了QQ"
Lucy avatarLucy2011-10-21
我還想請教一個問題是 如果連續兩行一樣內容
似乎出來的結果就都是為n@@?(剛剛試了一下好像是這樣)
Blanche avatarBlanche2011-10-22
jk543 [2,1]
Anonymous avatarAnonymous2011-10-26
樓上,把 [ 前面的字串砍掉就好了.例外情形太多了吧.
Linda avatarLinda2011-10-30
cat testInput|sed 's/.*\[/[/'|sed 's/[^0-9]/ /g'|awk..