はじめに
小さなことですが、 xargs の man ページを見ていて気づいたことが 2つ ありました。
検証環境
| |
man ページの一部抜粋
一部抜粋します。 以下のようなことが書いてありました。
| |
今回学んだことは2点。
- xargsに渡すパラメータの情報はダブルクォートやシングルクォートでグループ化できる
- xargsで実行するコマンドを明示しなかった場合は
echoコマンドが利用される
試してみます。
xargsに渡すパラメータの情報はダブルクォートやシングルクォートでグループ化できる
標準入力から情報を1つずつ受け取って、 echo させてみます。
( -n 1 オプションを指定すれば、標準入力から受け取るパラメータを1つずつにできます。 )
| |
ここで、 “a” と “b” だけはひとまとめに処理させたい場合にはシングルクォートあるいはダブルクォートで囲んでやることでグルーピングできるということです。 やってみます。
| |
上記の方法では echo の実行結果からダブルクォートが除去されてしまうため、もう一括り外側で囲んでやる必要があります。
| |
シングルクォートとダブルクォートの位置を入れ替えても同様の結果が取得できます。
| |
xargsで実行するコマンドを明示しなかった場合は echo コマンドが利用される
これがびっくりしました。
実は echo コマンドを実行させたい場合は明示しなくても良いそうです。
| |
確かに echo を書かなくても動作していますね。
コードゴルフ の際には大きな武器になります。
ひとこと
xargs は読み進めるともっと便利な機能、きっとあると思う。