変数に格納された文字列の前後にある半角スペースを削除するシェルスクリプトのサンプルを以下に紹介します。
尚、変数に格納された文字列の前後が半角スペースの場合、ダブルクォーテーションで変数を囲まないと削除されてしまいますのでご注意を。
リンクから本記事のサンプルスクリプトをダウンロードできます。
以下の記事で、本ファイルを使用して説明します。
#ref(): File not found: "trim.sh" at page "逆引きシェルスクリプト/前後の半角スペースを削除するサンプルスクリプト"
前後の半角スペースを削除するサンプルスクリプトになります。
Trim() { FUNC=Trim if [ $# -ne 1 ]; then echo "$FUNC : invalid argument" 1>&2 return 1 fi echo "$1" | sed -e 's|^[[:space:]]*||;s|[[:space:]]*$||' return 0 }
$ . trim.sh $ STR=" HELLO " $ echo "$STR" HELLO $ Trim "$STR" HELLO
$ R=`Trim "$STR"` $ echo -${R}- -HELLO-
左側の半角スペースを削除するサンプルスクリプトになります。
LTrim() { FUNC=LTrim if [ $# -ne 1 ]; then echo "$FUNC : invalid argument" 1>&2 return 1 fi echo "$1" | sed -e 's|^[[:space:]]*||' return 0 }
$ . trim.sh $ STR=" HELLO " $ echo "$STR" HELLO $ L=`LTrim "$STR"` $ echo "-$R-" -HELLO -
右側の半角スペースを削除するサンプルスクリプトになります。
RTrim() { FUNC=RTrim if [ $# -ne 1 ]; then echo "$FUNC : invalid argument" 1>&2 return 1 fi echo "$1" | sed -e 's|[[:space:]]*$||' return 0 }
$ . trim.sh $ STR=" HELLO " $ echo "$STR" HELLO $ R=`RTrim "$STR"` $ echo "-$R-" - HELLO-
以上、シェルスクリプトで前後の半角スペースを削除するシェルスクリプトのサンプルでした。