在shell脚本中可以看到别名的替代方案

Iul*_*urt 0 bash shell alias

我已经设置了.bashrc一些别名,我需要在shell脚本中看到我无法修改.

所以,只要我不能扩展该脚本中的别名,我还有什么选择?

(例如,我需要定义python2.6为相同python)

Pau*_*ce. 5

定义和导出函数而不是使用别名.

假设您的脚本使用mv不使用-i或者-v您希望添加它们,但无法修改脚本.

function mv () { command mv -iv "$@"; }
export -f mv
Run Code Online (Sandbox Code Playgroud)

现在您的脚本将使用这些选项.您可以从命令行或包装器脚本中定义函数.

击手册说:"对于几乎所有目的,壳功能优于别名".

编写良好的脚本使用可执行文件的绝对路径(例如/bin/mv).这样做会阻止这种技术的工作,是一种很好的安全措施.