使用SSH命令时,经常会遇到SSH命令需要封装很多参数(如ssh key),导致每次执行的命令比较复杂,可以使用如下方法对SSH进行封装,使你的远程执行操作事半功倍。
介绍
rcmd () {
# usage:
# rcmd USER@HOST:PORT "command"
# 输出命令结果
# 记录执行情况到日志中
local rhost=$1; shift
ssh -o StrictHostKeyChecking=no $rhost "bash -lc 'source ~/.bashrc; export HASTTY=1; $@'"
}
使用
# rcmd 172.25.0.5 id
uid=0(root) gid=0(root) groups=0(root)