ssh server并执行命令
- 场景:在本地连接远程服务器,执行远程服务器的命令
- 命令
ssh archvm P jc restart js-hpr
-
实践中遇到的问题: P 命令无法执行,提示
P: command not found错误 -
原因: P 命令是自定义的命令,不是系统命令,所以无法执行。
-
改进措施:
- 使用
ssh命令连接远程服务器 - 找到
P命令所在的位置,或查看 .bashrc 文件中是否有P命令的别名 - 查找
P命令的位置
whereis P
- 查找
P命令的别名
alias P
# cat ~/.bashrc | grep P
- 在本例子中,
P命令是作为别名而存在的,P命令的原始命令为node /mnt/mb/deploy/platter-gitignore.js - 所以,可以使用
node /mnt/mb/deploy/platter-gitignore.js命令代替P命令,最终执行的命令为
ssh archvm node /mnt/mb/deploy/platter-gitignore.js restart js-hpr
另外,若 P 命令存在于 /usr/bin/ 目录下,可以直接使用 P 命令,如
ssh archvm P restart js-hpr