メモの日々


2005年10月11日(火) [長年日記]

[unix] xargs

FreeBSD 4.11とFedora Core 3とではxargsのオプションがちょっと違うようだ。気になる違いを覚え書き。

  • 何行読み込む度にコマンドを実行するかどうかを指定するオプションが違う。
    • FreeBSDは「-L number」。
    • Fedoraは「--max-lines=number」または「-lnumber」。
  • パラメータを挿入する位置を指定するオプションが違う。
    • FreeBSDは「-J replstr」。
    • Fedoraは「--replace=replstr」または「-ireplstr」。このオプションを指定すると、同時に「--max-lines=1」が指定されたことになる。

で、元々やりたかったのはSubversionで複数のファイル・ディレクトリに対しmoveコマンドを発行すること。

(FreeBSD 4.11の場合)
ls -1d *keyword | xargs -L 1 -J % svn move % 移動先

(Fedora Core 3の場合)
ls -1d *keyword | xargs --replace=% svn move % 移動先

としてみた。lsの「-1」オプションは無くても動いたけど一応書いといた。

やること

  • 蛍光灯を捨てる