hns - 日記自動生成システム - Version 2.19.7

void GraphicWizardsLair( void ); //

otsune GWL
FreeBSD, AfterEffects, RETAS, animo, DigitalAnime, Linux, Mac OS, Win2k

[Who is otsune?] [title] [message] [Policy] [注目エントリー] [top]
Twitter Status :


Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい

検索式:

先月 2007年03月 来月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31


2007年03月29日(木) [長年日記]

#1 [UNIX][sysadmin] いまどきfindとxargsを使う時は-print0と-0を忘れずに

ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック_404 Blog Not Found:勝手に添削 - find(1)_ を読んで。
ディレクトリ名に0x20(空白)が入るMac OS X環境でfindに-print0を使わずにxargsで受け取るのはヤバい。かなり危険。一度AppleがiTunesのアップデートスクリプトで0x20デリミタの想定外動作をやらかして、誤消去したことがあったよなぁ。
なので「findには必ず-print0オプションを付けて、xargs -0で受け取る」というのを広く世に広めたい。例えば
find . -type f -name '*~'  -print0 | xargs -0 rm 
という感じ。
「ディレクトリ名に0x20なんて含めネェよ」という伝統的なUNIX使いの人でも、Sambaやnetatalkでファイルサーバーを構築していたりするのなら必須だし。

1 -print0オプションは最後に付けないとヤバい:

ぼんやりと考えたこと_ からのTrackBackで指摘があるけど、-print0を-nameなどよりも先に指定すると、他の条件は無関係に全てのファイルを出力してしまう。

1 -exec utility {} + でも良い:

「\;」のかわりに「+」で終端させるとxargsと同じように複数ファイルを同時に処理出来る。
Permalink: http://www.otsune.com/diary/2007/03/29/1.html#200703291
trackback
このエントリーを含むはてなブックマーク del.icio.us livedoor Clip View blog reactions
Last Updated 2007-03-29 00:00:00 By otsune

この記事へのトラックバック[6]

18 til i die:[tips]findの用法あれこれ
dankogaiさんのblogでいろいろと書かれていて参考になったというかほぼその通りだと...
ぼんやりと考えたこと:左から右へと受け流す
ムーディ勝山は「右から左へと受け流す」と歌っているけれど、それとは正反対の方向...
zenpouの日記:[Linux]シェルを覚えた経緯を詳し目に書いてみる
perl - the best friend of find(1) 404 Blog Not Foundを見てて、シェルについて書...
くれすの開発日記 〔Perl編〕:[メモ] 改行コードを一発変換するやつ
大したものじゃないんだけど一応。 #!/usr/bin/perl # Name: dos2unix.pl use strict...
遊ネット 技術系Wiki (PukiWiki/TrackBack 0.3):メンバー一覧/内野 良隆/制作/Avi-Ban/不要データ削除
Avi-Banの不要データを削除する ▲ ▼概要 Avi-Ban DB のレコード数、...
otsune's SnakeOil :findコマンドの-execで複数ファイルを扱うときは「-exec utility {} +」を使うのもオススメ
このめっちゃ便利やねん find コマンドのオプションまとめ | バシャログ。のエントリ...