kshutils/diralias

35 lines
542 B
Plaintext

function diralias
{
typeset -i i
case $# in
0)
let i=0
while (( i < ${#DIRALIASNAM[@]} ))
do
printf "%s\t%s\n" ${DIRALIASNAM[i]} "${DIRALIASVAL[i]}"
let i++
done
;;
1)
let i=0
while [[ $i -lt ${#DIRALIASNAM[@]} && $1 != ${DIRALIASNAM[i]} ]]
do
let i++
done
(( i == ${#DIRALIASNAM[@]} )) && print $1 || print ${DIRALIASVAL[i]}
;;
2)
let i=0
while [[ $i -lt ${#DIRALIASNAM[@]} && $1 != ${DIRALIASNAM[i]} ]]
do
let i++
done
DIRALIASNAM[i]=$1
DIRALIASVAL[i]="$2"
;;
*)
exit 64
;;
esac
}