2015-03-13 53 views
0

我遇到了一個問題,我需要更改bash中字符串中字符的順序,以獲取sim卡的ICCID。交換字符串中的字符位置(bash)

我從調制解調器獲取的數字看起來像這樣; 980136010000006187F5。我需要做的是將字符串中的字符成對並反向背誦。在這個例子中,98是89,01是10等等,最後加起來是8910631000000016785F,這是一個正確的ICCID號碼。

我想這可能是可能的使用sed或for循環的種類,但我已經陷入如何實現這一點。幫助將非常感激!

問候, 卡爾

回答

1

sed可以很容易地做到這一點。

sed 's/\(.\)\(.\)/\2\1/g' <<<980136010000006187F5 

sed命令找到每個匹配..(即一對的字符),獨立地捕獲它們,然後在相反的順序在兩個捕獲替換它們。