2016-12-14 40 views
0

我想要寫可以在終端運行的(簡單)的程序,是這樣工作的:擊/殼腳本用於去除尾部空格

它輸入:一個或多個文件名(例如MyProgram.java )

它從文本文件中刪除每個尾隨的空格。

如何從終端使用的程序(像這樣):

/home/username/bin/script.sh MyProgram.java

我試圖在谷歌搜索幫助,但我找不到任何幫助我的東西。

我正在使用Gedit。我知道那裏已經有Gedit插件了,但是我正在嘗試學習shell腳本,而最後的空白區正在困擾着我。

+1

歡迎來到SO,在這個網站中,我們並沒有要求其他人爲我們編寫代碼,而是編寫我們自己的代碼並詢問其他社區成員如何克服我們遇到的問題。因此,首先嚐試自己實現它,當遇到具體的具體問題時,請隨時將其發佈到此處。祝你好運! 我在投票結束太寬泛的問題。 – alfasin

+0

你不需要這個腳本,只需使用'xargs'作爲'xargs Inian

+4

歡迎來到SO。只是爲了防止人們寫更多的bash腳本:你知道** sed **嗎?這是一個強大的命令行工具,可能非常適合這些問題:請參閱[如何使用sed刪除尾隨空格](http://stackoverflow.com/questions/4438306/how-to-remove-trailing-whitespaces-with -SEd)。 – lupz

回答

0

我可能會使用sed這個。

#!/bin/bash 

sed -e 's/ *$//' -i.old "[email protected]" 

-e表示下一個參數是要運行的腳本。

s/ *$//就是那個腳本。這意味着,對於每一行,將行尾(/ *$/)的所有空格替換爲空(//)。

-i.old表示編輯文件到位,並將原件移動到名爲<same_name_as_before>.old的文件。

"[email protected]"查詢此shell腳本的參數並將它們不變地傳遞給sed進程。