回答:
bashでは、この順序で:
GLOBIGNORE=.
shopt -u dotglob
GLOBIGNOREが設定されている場合、と..は自動的に無視されるため、実際にGLOBIGNOREに設定する必要はありませんが、無視するものが他にない場合は、何も設定する必要がありません。
GLOBIGNOREをnull以外の値に設定するたびに、bashはオプションdotglob
をオンにするので、後でオフにする必要があります。それ以外の場合、bashは*
ドットで始まるファイルを含むように展開されます。
.
と..
ではなく、foo/.
とfoo/..
。GLOBIGNORE=.:*/.:*/..
これをパス名でも使用できるようにすることもできます。
使用中の設定(GLOBIGNOREなど)を確認する時間があまりない慣れていないシステムでは、次のフールプルーフパターンを使用します。
command .??*
.
と..
環境によらず。.a
dotglob
オンにしたほうがいいので、設定GLOBIGNORE
は完璧に聞こえます。