c - 在 Bash 脚本中运行 C 程序

标签 c bash

当我在此 bash 脚本中运行 C 程序时,它返回错误。

ssh -n -f *.*.*.* "cd /home/sth/remote && echo "$1" && det=$(./ossec-rootcheck)">/home/sthh/res

错误:

 ./ossec-rootcheck: No such file or directory

我想通过 ssh 连接到一台远程机器,然后在它上面运行一个程序。我知道该文件位于该路径中,因为当我如您所见编辑它时,它可以工作。

ssh -n -f *.*.*.* "cd /home/sth/remote && echo "$1" && ./ossec-rootcheck">/home/sthh/res

当它 echo $1 时,我可以看到它 cd/home/sth/remote 是正确的。但我希望将该程序的返回值存储在一个变量中,例如 det

最佳答案

ssh -n -f *.*.*.* "cd /home/sth/remote; echo "$1"; ./ossec-rootcheck || do_your_work">/home/sthh/res

您不必将其存储在变量中。

||如果 ossec-rootcheck 的退出状态执行 do_your_work != 0

如果你想将数字退出状态存储在一个变量中,或者回显它,你可以这样做(使用适当的转义):

./ossec-rootcheck; ecode=$?; echo $ecode

关于c - 在 Bash 脚本中运行 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18849557/

相关文章:

C动态加载文件太短?

c - 传递给函数的指针没有更新

Bash:在同一行记录时间和命令输出

linux - 仅尾部一行的前几个字符

bash - nmcli con up 命令似乎在给它一个来自变量的连接名称时添加了一个尾随句点

regex - 如何确保 Bash 字符串是字母数字的,没有下划线?

c - 为什么根在二叉树中总是为空

c - 用 %p 打印空指针是未定义的行为?

c - 虚拟机查杀性能中的函数调用

linux - 1号线不工作,这两条线不一样吗?为什么?