1. 程式人生 > >SHELL下如何去掉字串裡的空格(或指定字元)

SHELL下如何去掉字串裡的空格(或指定字元)

柳鯤鵬

網上很多辦法,雖然是對的,用起來結果不對。這裡提供正確辦法。

去掉開頭的空格

$text=" 123 456 "
# 這個寫法,保證了得到正確的結果。
text=`echo $text | sed -e 's/^[ \t]*//g'`


# 這些方法沒有測試,寫法參照上面的。
# 去掉尾巴的空格 sed  's/[ \t]*$//g'
# 刪除前、後空格,不刪除中間空格 sed -e 's/^[ \t]*//g' -e 's/[ \t]*$//g'
# 刪除字串中所有空格 sed 's/[[:space:]]//g'

當然還有簡單辦法:

# 只替換一個
text=${text/ /-}
# 全部替換
text=${text// /-}