我如何做别名,检查我是否在目录" python27"什么时候不会去那个目录,运行一些脚本然后回到主目录?当我在" python27"目录它应该只运行脚本并返回主目录。我的意思是这样的:
alias p="if [ pwd != /home/myname ] then cd python27 && python $1 && cd ~ else python $1 && cd ~ fi"
答案 0 :(得分:1)
请勿使用别名,而是使用函数。
您无需检查自己是否在python27
目录中,只需cd
,运行脚本,然后cd
回家。
这样的事情,只需要很少的检查:
p() {
if [[ -z $1 ]]; then
echo >&2 "need an argument"
return 1
fi
if ! cd /full/path/to/python27; then
echo >&2 "can't cd to python27"
return 1
fi
python "$1"
cd ~
}
如果您需要传递更多参数(例如,选项),也可以使用python "$@"
代替python "$1"
。