例如
~/.cshrc
:
alias job_start 'cd $PROJ_DIR && source .env/bin/activate.csh && rehash && job_run'
$PROJ_DIR/.env/bin/activate.csh
:
alias job_run '(cd $PROJ_DIR/builds; sh run.sh)'
调用 job_start 后:
% job_start [4/36]
job_run: Command not found.
但别名会在调用job_start
->job_run
出现后更新。
手动调用job_run
将按预期进行。
答案1
让您的别名获取脚本,而不是尝试让它直接执行:
alias job_start 'cd $PROJ_DIR && source ~/bin/job_start'
看起来~/bin/job_start
像这样:
source .env/bin/activate.csh
rehash
job_run
或者,如果不需要保留对环境的更改,您可以只使用别名execute ~/bin/job_start
。
另外,如果~/bin
在您的路径中,将~/bin/job_start
脚本重命名为其他名称可能是合适的:-)