私はこのディレクトリを持っていvar/www/html
て、その下にはいくつかのウェブサイトディレクトリ(例えば5つほど)があります。
5つのWebサイトディレクトリにはすべて内部パスがありますdir0/dir1
。
he_IL.mo
1つのコマンドでパス内のすべてのinode(名前付きinodeを除く)を一括削除する方法は?
次の3つの有効なコマンドブロックがあるため、コマンドについて質問していますが、このコマンドをできるだけ少なく使用したいと思います。
(
find /var/www/html/*/dir0/dir1/ ! -name 'he_IL.mo' -type f -exec rm -f {} +
find /var/www/html/*/dir0/dir1/ -type f -exec rm -d {} +
find /var/www/html/*/dir0/dir1/ -type f -exec rm -l {} +
)
*
代わりに、これを行うとf
「1文字だけを含める必要があります」というメッセージが表示されます。i
代わりにこれを行うと、f
「不明なパラメータ」が表示されます。
答え1
コマンドを使用するには、-type
コマンドから を削除します。それから私達は次を得ます:
find /var/www/html/*/dir0/dir1/ ! -name 'he_IL.mo' -exec rm -f {} +
その名前のディレクトリとソフトリンクも削除されませんが、he_IL.mo
可能であれば使用してください。