Die Antwort auf das Entfernen von Leerzeichen mit sed hat die meiste Antwort, aber ich möchte
sed -i 's/[ \t]*$//' $1
um eine beliebige Anzahl von Dateiargumenten als Shell-Skript in der Befehlszeile verwenden zu können, einschließlich globaler Argumente. Angenommen, das Skript wird aufgerufen strip_trailing_whitespace
. Dann möchte ich beides können
strip_trailing_whitespace foo.cc bar.cc
und
strip_trailing_whitespace *.cc *.hh
um nachfolgende Leerzeichen aus allen Dateien des Formulars zu entfernen *.cc
und *.hh
. Argumente, die nicht auf der oben zitierten Antwort basieren, sind ebenfalls in Ordnung.
echo "$@"
. Wenn Sie den Parameter verwenden, wird er in keiner Weise geändert, sodass Sie$@
beliebig oft (oder auf einen anderen Parameter: positionell, speziell oder nicht) verweisen können .