Next: Limiting Command Size, Previous: Safe File Name Handling, Up: Multiple Files
これまで議論したように,find
とその他のプログラムでのファイル名の
処理方法について,頻繁に注意する必要があります.find
の出力を他の
プログラムに渡さず端末に表示させる場合でも,問題になることがあります.
例えば,特定の文字の並びには端末のファンクションキーを再構成するものも
あります.find
のセキュリティの問題に関する議論は,
See Security Considerations.
通常ではない文字は,以下の記述のように,さまざまなアクションとは別に処 理されます.
この引用符で囲む手法は,GNU ls
と同じ方法で実行されます.
‘-ls’と‘-fls’で使用される引用符で囲むメカニズムとは異なります.
find
の出力で使用する書式を決定することが可能な場合,通常は改行で
はなく‘\0’を終端文字として使用するほうが良く,それは,ファイル名に
は空白や改行文字を含めることができるからです.
find
を使用している場合,‘-print’の代わりに
‘-print0’の使用を検討すべきでしょう.
locate
プログラムは,find
の‘-print’アクションと同じ方
法で,ファイル名の通常ではない文字を引用符で囲んだり,エスケープしたり
します.
これまで記述してきた動作はまもなく変更される可能性があり,それは,印字 不能な文字列の処理を,‘-ls’,‘-fls’,‘-print’, ‘-fprint’,‘-printf’,そして‘-fprintf’で調和させるためで す.