【问题标题】:ssh command output to save in a text file in shell scriptssh 命令输出以保存在 shell 脚本中的文本文件中
【发布时间】:2014-12-02 16:52:07
【问题描述】:

我想编写 shell 脚本,我在其中使用 ssh 命令。 无论我将通过 ssh 命令获得什么输出,我都希望将其保存在文本文件或变量中,这样我就可以在我的 shell 脚本中使用它。 目前我将输出保存在一个变量中,但是当我在 ssh 命令之外使用该变量时,值显示为空白。 代码是

ssh hostname -c "'
`pwd`;
var=$(ps -ef | grep Consumer | cut -f6 -d' ')
'";
echo $?;

echo "vbar  $var";

打印时var值是空白的。

【问题讨论】:

  • 我不确定,但我认为这种形式可能会有所帮助:ssh XXXXXXX > outfile.txt;猫 outfile.txt
  • 它是空白的,因为 var 在远程计算机 (ssh) 上运行的 bash 会话中被分配了一个值。但是,您的变量评估发生在本地会话中。

标签: linux bash shell unix ssh


【解决方案1】:

将 ssh 的输出保存在本地文件“file.log”中:

ssh hostname > file.log << EOF
pwd
ps -ef | grep Consumer | cut -f6 -d' '
EOF

【讨论】:

  • 如何使用一个 ssh 执行两个命令来保存 2 个不同的文件。就像一个命令是 ps -ef | grep 消费者 | cut -f6 -d' ' 并将此输出保存在 file.log 中,第二个命令是 ps -ef | grep 测试 | cut -f7 -d' ' 并将输出保存在 test.log 中
  • 请将此作为一个新问题提出。谢谢。
猜你喜欢
  • 2013-12-13
  • 2021-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-01
  • 1970-01-01
  • 2019-01-06
  • 2021-03-13
相关资源
最近更新 更多