alias设置的别名命令在终端正常执行在shell脚本中无法直接使用(command not found)?
1 背景👇🏻👇🏻👇🏻:
setup_test为在/root/.bashrc中使用alias设置的别名命令。setup_test在命令行正常执行,但是执行sh脚本,报错:setup_test:command not found。
shell脚本内容如下:
#!/bin/bash
setup_test
2 分析🐰🐰🐰:
shell分为交互模式和非交互模式。脚本执行方式默认为非交互模式,普通命令行方式则默认是交互模式,而alias在非交互模式下默认是无法使用的,即alias设置的别名命令报错:command not found。
3 解决方法💊💊💊:
具体做法是在shell脚本内容修改如下: