bashで文字列のtrimをする方法

こんにちは、さるまりんです。

シェルの小ネタです。

いろんなプログラミング言語にtrimの機能があります。
前後の空白文字を取り除いてくれるものです。

これをbashでやるにはどうするか?

xargsがやってくれます。

やってみます。

まずは前後に空白文字を含む文字列をechoしてみます

$ echo "    さるまりん    " 
    さるまりん

後ろはわかりにくいですが、空白ありで出力されました

今度はxargsを使ってtrimしてみます。

$ echo "    さるまりん    " | xargs
さるまりん

どうでしょう?
これも後ろはわかりにくいのですが空白なしで出力されていますね。

echo 文字列 | xargs

trimに似たことをやってくれます。

最後の文字が改行文字の場合はどうでしょう?

$ echo "    さるまりん    
> " | xargs
さるまりん
$

これだと最後に改行文字が残っているようです。

これも取り除くには最後にecho -nをつけます。

$ echo "    さるまりん    
" | xargs echo -n
さるまりん$

これで改行文字も取り除くことができました。

echo 文字列 | xargs echo -n

で、改行込みで取り除く、です。

小さなことですが変化が出るのですね。

読んでくださってありがとうございました。

それではまた!