如何修改以下内容,以便它读取 maildir 而不仅仅是邮箱格式?
typeset -a mailpath
for i in ~/Mail/Lists/*(.); do
mailpath[$#mailpath+1]="${i}?You have new mail in ${i:t}."
done
目前,我得到:
/home/XXX/.zshrc:77: no matches found: /home/XXX/.Mail/Lists/*(.)
答案1
new
您需要枚举 下调用的目录~/Mail/Lists/
。这只是几个问题全局限定符:/
匹配目录,N
如果没有匹配,扩展可能为空。使用${i:h:t}
显示邮箱名称而不是new
。
for i in ~/Mail/Lists/**/new(/N); do
mailpath+=("${i}?You have new mail in ${i:h:t}.")
done
您可以使用e
glob 限定符使其成为一行,尽管是一个神秘的行。
maildirs+=(~/Mail/Lists/**/new(/Ne\''REPLY="${REPLY}?You have new mail in ${REPLY:h:t}."'\'))