BASH - 找不到 xargs 命令
BASH - xargs command not found
我正在尝试创建一个 BASH
脚本,它将 运行 我的命令。这是命令之一的示例:
function systemStart {
./ORBMarkerDetection | xargs -n3 java -jar ../../system/layers/out/artifacts/layers_jar/layers.jar
}
但是当这是 运行 时,我收到错误(参考上面的行):
./runActivities.sh: line 7: xargs: command not found
我能够在终端中成功地 运行 这个命令,所以我不确定为什么这不会 运行 在 BASH 脚本中?
我是这样调用函数的:
systemStart $PATH/1.1/cupCupboard.png $PATH/1.1/kitchenDoor.png $PATH/1.1/tap.png
您显然是出于自己的目的使用变量名称 PATH
,但您不能这样做——PATH
是一个保留变量,更改它会导致 shell 找不到命令(不仅是 xargs
,基本上是任何命令)。
一般来说,你应该避免使用大写的变量名;那么您可以确定您的变量永远不会与内置 shell 变量发生冲突。
(您可能需要将完全限定路径放入脚本中?)
命令which
可以告诉你事物的完全限定路径。
robert@debian:~$ which xargs
/usr/bin/xargs
locate
还可以告诉你文件的位置
最后,使用 find 进行暴力完整文件系统搜索:
robert@debian:~$ find / -name "xargs" 2> /dev/null
/usr/bin/xargs
我正在尝试创建一个 BASH
脚本,它将 运行 我的命令。这是命令之一的示例:
function systemStart {
./ORBMarkerDetection | xargs -n3 java -jar ../../system/layers/out/artifacts/layers_jar/layers.jar
}
但是当这是 运行 时,我收到错误(参考上面的行):
./runActivities.sh: line 7: xargs: command not found
我能够在终端中成功地 运行 这个命令,所以我不确定为什么这不会 运行 在 BASH 脚本中?
我是这样调用函数的:
systemStart $PATH/1.1/cupCupboard.png $PATH/1.1/kitchenDoor.png $PATH/1.1/tap.png
您显然是出于自己的目的使用变量名称 PATH
,但您不能这样做——PATH
是一个保留变量,更改它会导致 shell 找不到命令(不仅是 xargs
,基本上是任何命令)。
一般来说,你应该避免使用大写的变量名;那么您可以确定您的变量永远不会与内置 shell 变量发生冲突。
(您可能需要将完全限定路径放入脚本中?)
命令which
可以告诉你事物的完全限定路径。
robert@debian:~$ which xargs
/usr/bin/xargs
locate
还可以告诉你文件的位置
最后,使用 find 进行暴力完整文件系统搜索:
robert@debian:~$ find / -name "xargs" 2> /dev/null
/usr/bin/xargs