はじめに
基本的にManを読めばいいのですが、Linux(GNU)とmacOS(BSD系)で微妙にオプションが違ってハマったり、実際どうなるの? という用例が有ると嬉しいことがあるので、このページにまとめることにしました。
随時、加筆予定。
動作環境について
- macOS ... 2020年5月現在はMojaveを使ってます。
- Linux ... 同Ubuntu 18.04LTSを使うことが多いです。
オプション
Linux, macOSどちらでも使えるもの:
オプション | 効果 |
---|---|
-L {number} |
引数を最大何行ずつ処理するか。後述 |
-n {number} |
引数を最大何個処理するか指定する |
-t |
実行するコマンドを出力する |
-L {number}
- 何行ずつ処理するか
-
-n {number}
だとスペースで分かれている単語も別と換算するけど、-L
だと引数が行単位になる。N行ずつ処理したい、という場合に使う
LinuxとmacOSで微妙にManの説明が違うのですが、同じ挙動のようで、よく読むとまあ同じことを書いているような気もします。
macOSのManだと -n
と同時に指定はできないとあるのですが、LinuxのManでは書いてない。
使用例
# Linux & macOS
% seq 1 5 | xargs -L2 echo
1 2
3 4
5
% seq 1 5 | xargs -L2 echo | xargs -L2 echo
1 2 3 4
5