トップ «前の日記(2008-05-19) 最新 次の日記(2008-05-22)» 編集

Ussy Diary


2008-05-20

[Ubuntu]MANPATH

SSH でサーバにつなげて man を日本語化しようと思い、日本語化パッケージを入れたのに日本語にならない。と思ったら MANPATH が空なだけだった。。。駄目だこ。

export MANPATH=/usr/local/man/ja:/usr/local/share/man/ja:/usr/share/man/ja:/usr/X11R6/man/ja

[Linux][Shell]xargs を使って tar で複数ファイルを解凍する

tar ファイルが複数あるときどうやって解凍どうするの?なんて話があって あまり複数を解凍することに遭遇しないけど。

% find . -name "*.tar.gz" -print0 | xargs -0 tar xf

最初はこれでいくかと思ったけど tar は複数のファイルを引数に受け取らないため駄目。 -n1 をつけるとうまくいった。

% find . -name "*.tar.gz" -print0 | xargs -0 -n1 tar xf

n オプションがポイントみたいで t オプションをつけると理解できた。 rm は複数ファイルを受け付けるので rm コマンドでためす。

% find . -name "*.tar.gz" -print0 | xargs -0 -t rm
rm ./hoge.tar.gz ./foo.tar.gz ./fuga.tar.gz
% find . -name "*.tar.gz" -print0 | xargs -0 t -n1 rm
rm ./hoge.tar.gz
rm ./foo.tar.gz
rm ./fuga.tar.gz
% find . -name "*.tar.gz" -print0 | xargs -0 t -n2 rm
rm ./hoge.tar.gz ./foo.tar.gz
rm ./fuga.tar.gz

xargs って便利だなあ。