当bash函数具有相同名称时调用程序
我的bash脚本中有以下函数:当bash函数具有相同名称时调用程序,bash,shell,Bash,Shell,我的bash脚本中有以下函数: make() { cd Python-3.2 make } 在该脚本中调用make时,将调用该函数,该函数将递归。函数内部对make的调用实际上应该调用外部make实用程序。除了重命名我的make函数,实现这一点最干净的方法是什么?使用程序的完整路径。例如/usr/bin/make 如果不知道完整路径,可以使用which实用程序,如: $(which make) 这将找到完整路径并执行make您可以使用内置的命令来抑制shell函数查找 com
make() {
cd Python-3.2
make
}
在该脚本中调用make时,将调用该函数,该函数将递归。函数内部对
make
的调用实际上应该调用外部make实用程序。除了重命名我的make函数,实现这一点最干净的方法是什么?使用程序的完整路径。例如/usr/bin/make
如果不知道完整路径,可以使用which
实用程序,如:
$(which make)
这将找到完整路径并执行
make您可以使用内置的命令来抑制shell函数查找
command:command[-pVv]command[arg…]
执行简单命令或显示有关命令的信息。
使用参数运行命令以抑制shell函数查找或显示
有关指定命令的信息。可以用来调用命令
当存在同名函数时,在磁盘上。
选项:
-p为路径使用默认值,该路径保证可以找到所有路径
标准实用程序
-v打印与内置的“type”类似的命令说明
-V打印每个命令的详细描述
退出状态:
返回命令的退出状态,如果未找到命令,则返回失败。
与使用实用程序相比,这种方法的一个好处是它可以避免启动额外的进程。