rhu*_*npk 1 linux bash shell-script shell-builtin
我想使用以下命令执行脚本中的所有命令command -p:
command -p pwd
Run Code Online (Sandbox Code Playgroud)
因为我可能会在脚本中执行一些命令,其名称被其他一些自定义用户脚本使用,在这种情况下,该command命令会导致执行系统命令而不是用户的命令(这是一个友好的解释,如果您想要从技术上了解幕后真正发生的事情,请查阅手册页)这就是我想要的。
好吧,这样我就不必command -p每次在脚本中调用任何命令时都在行首逐字输入“”,有没有办法command -p在脚本中定义全局的行为?
PATH=$(command -p getconf PATH)${PATH+:$PATH}
Run Code Online (Sandbox Code Playgroud)
将 POSIX 搜索路径放在$ PATH 之前。
您会发现上面的命令在标准实用程序的规范command中作为示例给出。
为了使其工作,需要从 POSIX shell 运行它才能支持command -p.
在支持多个版本标准的系统上,例如在 Solaris 上,/use/xpg6/bin 中的命令(包括getconf)其行为与 /use/xpg4/bin 中的行为不同,您将获得的命令可能取决于关于初始环境。
$PATH 的值是否会影响 shell 内置函数的行为也取决于 shell。
| 归档时间: |
|
| 查看次数: |
230 次 |
| 最近记录: |