2016-05-30 51 views
0

我有一個帶有一些前導和尾隨空格的文件。這裏是文件如何使用shell腳本從文件的每一行刪除前導和尾隨空格?

val1=22 
val2=23 
val4=34 

如何從中刪除前導空白和尾隨空白?白色空間也可能是一個「標籤」。有沒有一個單一的命令來做到這一點?

+0

你有什麼特別的實用工具嗎? – someOne

+0

nope。任何像sed,awk這樣的工具,但不應該是性能的罪魁禍首。 –

回答

0

這是我發現從文件的每一行中刪除前導和尾隨空格和製表符的命令。這個對我有用。

sed -i 's/^[ \t]*//;s/[ \t]*$//' "filename" 

  • S /:替換命令〜替代圖案(^ [\噸] *)上的每個尋址線
  • ^[\噸] *:搜索模式(^ - 啓動線; [\噸] *匹配的一個或多個空格包括選項卡)
  • //:替換(刪除)所有匹配的圖案

幸得此link

0

您有各種各樣的選項來達到預期的效果。其中之一就是使用Notepad++,最好的文本編輯器周圍的一個:

  • 打開你的文件,在記事本++,
  • 按Ctrl + ^h打開「替換」對話框,
  • 插入在「查找內容」文本框中(^[\s\t]+)|([\s\t]+$)
  • 保留文本框爲空「替換」,
  • 在底部選擇「搜索模式」組中的「正則表達式」的對話框。
  • 按下「全部替換」按鈕,就完成了。


插入代碼中的「查找內容」文本框是一個 regular expression指示取景器,找到領導( ^[\s\t]+)或結尾( [\s\t]+$)空格或製表符。

相關問題