我有以下zsh
腳本,它將給定目錄(README.md
除外)中的所有文件符號鏈接到我的主目錄,每個文件名前面有前導.
。zsh - 在glob循環中包含目錄
setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.dotfiles/home/^README.md(.N); do
ln -fsv "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done
的問題是水珠似乎不包括內部"${ZDOTDIR:-$HOME}"/.dotfiles/home/
任何目錄,只是常規文件。如何在此循環中包含目錄(例如,目錄/Users/user/.dotfiles/home/vim
與符號鏈接/Users/user/.vim
)?我已經嘗試了一些find
的東西,但如果可能的話,我寧願堅持使用純腳本zsh
腳本。
僅供參考,下面是該目錄的列表:
README.md
gitconfig
tmux.conf
vim
vimrc
zlogin
zprofile
zshenv
zshrc
而這裏的每個循環迭代的值:
/Users/user/.dotfiles/home/gitconfig
/Users/user/.dotfiles/home/tmux.conf
/Users/user/.dotfiles/home/vimrc
/Users/user/.dotfiles/home/zlogin
/Users/user/.dotfiles/home/zprofile
/Users/user/.dotfiles/home/zshenv
/Users/user/.dotfiles/home/zshrc
所以README.md
被排除在外,因爲我打算,但vim
也被排除在外,但我希望它(和任何其他目錄)被包括在內。
我認爲你必須定義ZDOTDIR賦予它像 ZDOTDIR =〜/ .dotfiles或類似成才的值,否則將zsh的$ HOME設置它。其他問題是:不要忘記在zsh而不是bash中執行該過程。 – SergioAraujo