やりたいこと
下記のようなファイル構成で directory1 を除外して削除したい。
parent/
|_directory1
|_directory2
|_directory3
grep を使う
rm
のオプションにあっても良さそうだと思ったがないので、ls
から grep
で除外した結果を削除する
# 確認する
ls | grep -v -E "^directory1"
# 実行
ls | grep -v -E "^directory1" | xargs rm -rf
.
(ドットファイル)を対象に含む場合は .
や ..
を除外して削除する
ls -a | grep -v -E "^\.$|^\.\.$|^directory1" | xargs rm -rf