3 # aliasconv.bash - convert csh aliases to bash aliases and functions
5 # usage: aliasconv.bash
10 trap 'rm -f $TMPFILE' 0 1 2 3 6 15
12 TMPFILE
=$
(mktemp
-t cb.XXXXXX
) ||
exit 1
20 '') echo alias ${1}="''" ;;
22 comm=$
(echo $2 |
sed 's/\!\*/"$\@"/g
23 s/\!:\([1-9]\)/"$\1"/g
25 echo $1 \
(\
) "{" command "$comm" "; }"
27 *) echo alias ${1}=\'$
(echo "${2}" |
sed "s:':'\\\\'':g")\' ;;
32 # the first thing we want to do is to protect single quotes in the alias,
33 # since they whole thing is going to be surrounded by single quotes when
36 sed -e "s:':\\'\\\'\\':" -e "s/^\([a-zA-Z0-9_-]*\)$T\(.*\)$/mkalias \1 '\2'/" >>$TMPFILE
38 $BASH $TMPFILE |
sed -e 's/\$cwd/\$PWD/g' \
39 -e 's/\$term/\$TERM/g' \
40 -e 's/\$home/\$HOME/g' \
41 -e 's/\$user/\$USER/g' \
42 -e 's/\$prompt/\$PS1/g'