shell字符串包含空格處理

一、刪除行首空格 複製代碼 代碼以下: sed ‘s/^[ \t]*//g' 說明: 第一個/的左邊是s表示替換,即將空格替換爲空。 第一個/的右邊是表示後面的以xx開頭。 中括號表示「或」,空格或tab中的任意一種。這是正則表達式的規範。 中括號右邊是*,表示一個或多個。 第二個和第三個\中間沒有東西,表示空 g表示替換原來buffer(緩衝區)中的,sed在處理字符串的時候並不對源文件進行直接處理,先建立一個buffer,可是加g表示對原buffer進行替換 總體的意思是:用空字符去替換一個或多個用空格或tab開頭的本體字符串 二、刪除行末空格 複製代碼 代碼以下: sed ‘s/[ \t]*$//g' 和上面稍微有些不一樣是前面刪除了^符,在後面加上了美圓符,這表示以xx結尾的字符串爲對象。 可是要注意在KSH中,Tab並非\t而是直接打入一個Tab就能夠了。 三、刪除全部的空格 複製代碼 代碼以下: sed s/[[:space:]]//g