天天看點

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// /-}