diff options
author | Tanaka Akira <akr@users.sourceforge.net> | 1999-06-08 09:25:39 +0000 |
---|---|---|
committer | Tanaka Akira <akr@users.sourceforge.net> | 1999-06-08 09:25:39 +0000 |
commit | 805381040dd69dd02b78423d2d71913b33f3cc33 (patch) | |
tree | 1fa89ee643e8e577a2f79e76e3d6cafc93256ca2 /Functions/Misc/checkmail | |
parent | f42e3fa8e6152e145251e8f16f4c61c23dec1f59 (diff) | |
download | zsh-805381040dd69dd02b78423d2d71913b33f3cc33.tar.gz zsh-805381040dd69dd02b78423d2d71913b33f3cc33.tar.xz zsh-805381040dd69dd02b78423d2d71913b33f3cc33.zip |
zsh-3.1.5-pws-21 zsh-3.1.5-pws-21
Diffstat (limited to 'Functions/Misc/checkmail')
-rw-r--r-- | Functions/Misc/checkmail | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Functions/Misc/checkmail b/Functions/Misc/checkmail new file mode 100644 index 000000000..9cc743db4 --- /dev/null +++ b/Functions/Misc/checkmail @@ -0,0 +1,26 @@ +#! /usr/local/bin/zsh +# +# This autoloadable function checks the folders specified as arguments +# for new mails. The arguments are interpeted in exactly the same way +# as the mailpath special zsh parameter (see zshparam(1)). +# +# If no arguments are given mailpath is used. If mailpath is empty, $MAIL +# is used and if that is also empty, /var/spool/mail/$LOGNAME is used. +# This function requires zsh-3.0.1 or newer. +# + +local file message + +for file in "${@:-${mailpath[@]:-${MAIL:-/var/spool/mail/$LOGNAME}}}" +do + message="${${(M)file%%\?*}#\?}" + file="${file%%\?*}" + if [[ -d "$file" ]] then + file=( "$file"/**/*(.ND) ) + if (($#file)) then + checkmail "${^file}\?$message" + fi + elif test -s "$file" -a -N "$file"; then # this also sets $_ to $file + print -r -- "${(e)message:-You have new mail.}" + fi +done |