无法在远程Linux主机上执行命令

时间:2020-04-21 20:47:42

标签: linux

我有多台主机(超过20台),需要执行命令,但无法正常工作。单个命令正在所有主机上运行

ps -ef |grep \`cat/z/y/x|tail -1| awk '{print$30}'\` 

脚本:

for hsts in `cat /a/b/c/hsts.txt`
  do
  ssh ${id}@${hsts} "cat /z/y/x|tail -1" | awk '{print $30}'
  done

以上代码段将为我提供所有主机上的进程ID。我想知道哪个进程正在使用此进程ID运行,并且我尝试使用以下命令,但无法正常工作。任何想法我想念的。

ssh ${id}@{hsts} ps -ef |grep "cat/z/y/x/tail -1" |awk '{print $30}'
# above command is not working when i use in the above do loop

1 个答案:

答案 0 :(得分:0)

我有多台主机(超过20台),需要执行命令,但该命令无法正常工作。

  1. 此代码段可在多个主机上运行,​​并为我提供我正在运行的主机上的进程ID。

对于cat /a/b/c//hsts.txt中的hsts,#hsts.txt文件包含所有主机 做 ssh $ {id} @ $ {hsts}“ cat / z / y / x | tail -1” | awk'{print $ 30}' 完成

  1. 我需要根据从代码片段上方获取的进程ID来修改上面的命令,以查看正在运行的进程。

以下代码段在单个主机上运行,​​并且向我显示了该过程,但是如果我将上述内容合并到for循环中,则该代码不起作用。感谢您的帮助。 ps -ef | grep`cat / z / y / x | tail -1 | awk'{print $ 30}'

相关问题