当前位置:   article > 正文

shell编写脚本jps命令查看指定服务器的进程时,启动报错bash: jps: 未找到命令_jpsall.sh =============== hadoop102 ==============

jpsall.sh =============== hadoop102 =============== bash: jps: command not f

想要查看单个主机在运行哪些java进程。我们可以去到每个主机下,使用jps命令,但是想要查看多个服务器进程时,我们可以使用一个shell脚本来完成此命令。
shell编写脚本jps命令查看指定服务器的进程时,报错

bash: jps: 未找到命令
  • 1

1.shell脚本 jpsall

#!/bin/bash
for i in hadoop101 hadoop102 hadoop103
do 
	echo "====   $i   ====="
	ssh $i "jps" | grep -v Jps
done
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

但是仅仅这样还不够,如果单纯的执行这个命令,会看到这样的报错:-bash :jps command not found。【猜测:这是jps并非是shell中的自有命令,所以需要稍微处理一下】
在每个jdk安装目录下的bin目录中找到jps这个命令。添加软连接

ln -s /XX/XXX/(自己服务器JDK地址)/bin/jps  /usr/local/bin/jpsall 
  • 1

验证一下成果

[root@hadoop101 bin]# jpsall 
====   hadoop101   =====
2416 NodeManager
1811 DataNode
1658 NameNode
2267 ResourceManager
====   hadoop102   =====
2069 NodeManager
1855 DataNode
1935 SecondaryNameNode
====   hadoop103   =====
1609 NodeManager
1486 DataNode
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/880046
推荐阅读
相关标签
  

闽ICP备14008679号