1.vim多标签多文档编辑
注意:[]内的可以省略
打开标签
命令行中打开:vim -p file1 file2
vim中打开:
:tabe[dit] {file}
:tabf[ind] {file}
关闭标签
查看帮助
:h tabedit
移动标签
跳转标签
正常模式下一些好用的快捷键
1.bash常用的快捷键
光标移动
请输入文字内容
剪切粘贴
请输入文字内容
1.expect的非交互式用法
expect usage(用于非交互式登录)
安装:yum install -y expect
apt-get install -y expect
选项:
-c: 执行脚本前先执行的命令,可多次使用。
-d: debug模式,可以在运行时输出一些诊断信息,与在脚本开始处使用exp_internal 1相似。
-D: 启用交换调式器,可设一整数参数。
-f: 从文件读取命令,仅用于使用#!时。如果文件名为"-",则从stdin读取(使用"./-"从文件名为-的文件读取) 。
-i: 交互式输入命令,使用"exit"或"EOF"退出输入状态。
--: 标示选项结束(如果你需要传递与expect选项相似的参数给脚本时),可放到#!行:#!/usr/bin/expect --。
-v: 显示expect版本信息。
常用命令
# 命令行参数
# argv,参数数组,使用[lindex argv n]获取,
# $argc,参数个数
set username [lindex $argv 1] # 获取第1个参数
set passwd [lindex $argv 2] # 获取第2个参数
set timeout 30 # 设置超时
# spawn是expect内部命令,开启ssh连接
spawn ssh -l username youripaddr
# 判断上次输出结果里是否包含“password:”的字符串,如果有则立即返回,否则就等待一段时间(timeout)后返回
expect "password:"
# 发送内容ispass[密码](密码、命令等)
send "ispass\r"
# 执行完成后保持交互状态,控制权交给控制台(手工操作)。否则会完成后会退出。
interact
参考案例
#!/usr/bin/expect
#设置变量
set host "ip_addr"
set passwd "passwd_string"
#执行expect命令
spawn ssh USERNAME@$host
#自定义匹配要自动输入的内容
expect {
"*yes/no*" {send "yes\r";exp_continue}
"*assword*:" {send "$passwd\r";exp_continue}
}
#释放控制台(必须)
interact