版权声明:本文系作者原创。未经许可,不得转载。
用expect实现无密码自动远程登陆。代码如下:
cmoslogin.sh
#!/usr/bin/expect -f
set timeout 30
spawn ssh system@192.168.100.100
expect "system@192.168.100.100's password:"
send "system\r"
expect "]*"
interact
用expect实现无密码自动远程复制单个文件,再调用该程序,实现无密码自动远程复制多个文件。代码如下:
cmoscopysingle.sh
#!/usr/bin/expect -f
set timeout 30
set cmosfile [lindex $argv 0]
spawn scp $cmosfile system@192.168.100.100:/home/user/
expect "system@192.168.100.100's password:"
send "system\r"
expect "]*"
cmoscopy.sh
#!/bin/bash
if [ $# -eq 0 ] ##判断参数是否存在
then
exit ##不存在退出
else
for i in $* ##存在话,取参数放入a中循环
do
cmoscopysingle $i
done
fi
使用方式如下:
./cmoscopy.sh *.cpp //将当前目录下所有的cpp文件上传
./cmoslogin.sh //登陆
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。