sshpass 远程执行命令
下载地址:https://sourceforge.net/projects/sshpass/files/latest/download
1.编译安装:
解压:
tar xf sshpass-1.06.tar.gz
进入到解压后的目录:
cd sshpass-1.06
configure:
./configure --prefix=/data/sshpass
编译:
make && make install
cp /data/sshpass/bin/sshpass /usr/local/bin/
sshpass 第一次连接服务器时无响应,没有进入到目标服务器,也没有报错, 这是因为 第一次ssh连接是需要公钥认证,sshpass在遇到Are you sure you want to continue connecting (yes/no)? 时未做出响应,导致ssh未认证通过
解决办法:sshpass -p password ssh -q -o StrictHostKeyChecking=no admin@192.168.10.1 自动接受新的公钥
参数:StrictHostKeyChecking=no
Linux 正则匹配 字母中间的n个数字的字符串,比如 想要截取 "asdc232 abc123def 123ads" 中的 abc123def
正确的处理方法: echo "asdc232 abc123def 123ads" | grep "\(abc\)[0-9]\{3\}def"
此类方法可运用于修改某配置文件中的某一行参数中具体的某一个参数
sed -i '/aaa/s/\(abc\)[0-9]\{3\}def/abc456def/' modfile