私はいくつかのフォルダに\n名前と文字を付けています。
例えば:
$ ls
''$'\n''Test'
これは、テスト名があり、名前の前に空行があるフォルダーを参照しています。
したがって、このようなスクリプトをその親ディレクトリで実行すると、次のようになります。
while IFS= read -r d; do
rmdir $d
done < <(find * -type d)
それが示している:
rmdir: failed to remove '': No such file or directory
rmdir: failed to remove 'Test': No such file or directory
フォルダー名に2行あるため、2回実行さ\nれTestます。
では、この問題を解決するにはどうすればいい\nTestですか?
find * -type d -print0 | while IFS= read -d '' file ; do rmdir $file ; doneコマンドにはこの出力があります rmdir: failed to remove 'Test': No such file or directory。
rmdir "$file"
-print0ディレクティブと-dreadオプションを使用する必要があります。stackoverflow.com/a/40189667/7552を