みちのいに!!

自分のメモと、他にもハマる人がいそうなことを書く

シェルにアスタリスク入れたらファイル一覧が出てきた

きっかけ

dotfiles(設定ファイルをGitHubに置いてどこでもマイ環境を構築できるスクリプト)を作ろうと思い,他人の設定を参考にしていたときに目にしたShell Scriptがこちら

cd ${DOT_DIRECTORY}

for f in .??*
do
  [[ ${f} = ".git" ]] && continue
  [[ ${f} = ".gitignore" ]] && continue
  ln -snfv ${DOT_DIRECTORY}/${f} ${HOME}/${f}
done

.??* ってなんだ?????????? どっと はてな はてな あすたりすく????????

調査

ググり方が悪いのか検索しても関連情報はヒットしませんでした.

結論からいうと,shellにマッチパターンを書くと作業ディレクトリのファイル・フォルダ一覧が出てくるようです.何故かは知りません.

正規表現ではなく,lsで指定するときに使うやつです.

ホームディレクトリでやってみました. shで出来たので,bashでもzshでも動くと思います

ドットのあとに任意の2文字,そのあとに任意の文字列

$ echo .??*
.adobe .android .asunder .asunder_album_artist .asunder_album_genre .asunder_album_title .bash_history .bash_logout .bash_profile .bashrc .bundle .cabal (以下略)

任意の文字列 隠しファイルは出てこない

$ echo *
backup Desktop Documents dotfiles Downloads (以下略)

T,U,V,Y,Xから始まるファイル

$ echo [t-x]*
Templates test tmp Videos VirtualBoX VMs

よくわからん

動作はなんとなくわかったが,全然知らなかったため,なんとなく困惑している