Bashでドットファイルだけを照合する方法は? [コピー]

Bashでドットファイルだけを照合する方法は? [コピー]

rm -rf .*rm削除を拒否した場合にのみ.ひどく終了します..

グローバルスキーマからこれらの特殊ディレクトリをどのように除外できますか?

dotglobすべてのファイルではなくドットで始まるファイルだけを一致させたかったので、この方法は機能しませんでした。

ベストアンサー1

Bashの場合、特殊変数をnull以外の値に設定すると、グローバル変数を展開するときにGLOBIGNOREその変数は無視されます。 ~から...バッシュ文書:

シェルGLOBIGNORE変数を使用して、パターンに一致するファイル名のセットを制限できます。GLOBIGNORE設定されている場合、GLOBIGNOREこれらのパターンのいずれかに一致する各一致ファイル名が一致リストから削除されます。このオプションを設定すると、大文字と小文字に関係なく、nocaseglobinのパターンに一致するものが検索されます。GLOBIGNORE設定されていて空でない場合、filename...は常に無視されます。GLOBIGNOREただし、GLOBIGNOREnull以外の値に設定すると、dotglobシェルオプションを有効にする効果があるため、‘.'で始まる他のすべてのファイル名が一致します。

に設定すると.:...すべてが..無視されます。 null 以外に設定するとこの動作も発生するため、次のように設定することをお勧めします。.

だから:

GLOBIGNORE=.
rm -rf .*

(からAsk Ubuntuに対する私の以前の答え.)

おすすめ記事