フォローアップファイル名に改行を含むファイルを見つける方法は?、
結果に対していくつかの作業を行う必要があります。単純化のために結果を削除する必要があるとします。
以下を試しましたが、動作しません。
# this is what I usually use, not work
find . -name '*'$'\n''*' -type d | while read a; do chown www.www "$a"; done
# this is more standard way, still not work
find . -name '*'$'\n''*' -type d | xargs chown www.www '{}'
答え1
find
ファイルのリストを再分析せずにコマンドラインをビルドします。
LC_ALL=C find . -name $'*\n*' -type d -exec chown www:www {} +
少なくともGNUシステムでは、LC_ALL=C
名前がユーザーのロケールで有効なテキスト以外のファイルを探していることを確認する必要があります。