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’で調和させるためで す.