web-dev-qa-db-ja.com

ターミナルを使用してすべての.svnフォルダを再帰的に削除する方法は?

フォルダ内の(そしてすべてのサブディレクトリから)すべての.svnフォルダを削除できますが、それ以外のものは削除できないようにするために、Terminalにどのようなコマンドを入力できますか?

54
Mikey
cd to/dir/where/you/want/to/start
find . -type d -name '.svn' -print -exec rm -rf {} \;
  • 再帰を行うfindを使う
  • 現在のディレクトリにあります。
  • filetypeはディレクトリです
  • ファイル名は.svnです
  • これまでに一致したものを印刷する(.svnディレクトリ)
  • コマンドrm -rf (thing found from find)を実行します。 {}は見つかったエンティティのプレースホルダです
  • ; execのコマンドが実行されたことをfindに通知します。シェルは何のアイデアも持っているので。つまり、シェルが特別なことをしないように\でエスケープする必要があり、単にfindを渡します。
117
Rich Homolka