一键登录远程服务器
1.直接连接服务器
创建 except 脚本
相关服务:韩国站群服务器
#!/usr/bin/expect
set timeout 30
spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]
expect {
"(yes/no)?"
{send "yes\n";exp_continue}
"password:"
{send "[lindex $argv 3]\n"}
}
interact
这里[lindex $argv 0], [lindex $argv 1],[lindex $argv 2], [lindex $argv 3] 分别代表着 端口号 用户名 服务器地址 密码 4个参数
sudo chmod +x /usr/local/bin/xxx.exp 【增加执行权限】
2.使用堡垒机连接服务器
创建 except 脚本
#!/usr/bin/expect
set jumpusr [lindex $argv 0]
set jumphost [lindex $argv 1]
set usr [lindex $argv 2]
set host [lindex $argv 3]
catch {spawn ssh -l $jumpusr $jumphost}
expect "*$jumphost*" { send "ssh -l $usr $host\r" }
expect "*$host*" { send "cd ~\r"; interact }
这里[lindex $argv 0], [lindex $argv 1],[lindex $argv 2], [lindex $argv 3] 分别代表着 堡垒机用户名 堡垒机ip 服务器用户名 服务器ip 4个参数
sudo chmod +x /usr/local/bin/xxx.exp 【增加执行权限】
安装并使用 rz 和 sz
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
1.配置rz、sz
1.安装brew
国外:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
国内:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
2.安装lrzsz
brew install lrzsz
3.下载 iterm2-zmodem-master.zip
iterm2-zmodem-master.zip内包含iterm2-send-zmodem.sh 、iterm2-recv-zmodem.sh 两个文件,直接将文件移动到 /usr/local/bin目录下
mv iterm2-send-zmodem.sh /usr/local/bin/
mv iterm2-recv-zmodem.sh /usr/local/bin/
chmod +x iterm2-*
2.配置item2
打开iterm2 按住command + ,进入 Preperences->Profiles–>Advanced找到Triggers点击edit(这里选择需要使用rz、sz服务器),增加如下两条

Regular expression: rz waiting to receive.**B0100
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-send-zmodem.sh
Instant:checked
Regular expression: **B00000000000000
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-recv-zmodem.sh
Instant: checked
3.解决使用expect脚本登陆服务器rz失效
问题描述:Mac和服务器都安装了sz rz 工具,但是用rz从服务器下载文件,一直处于假死的状态,虽然提示了文件传输成功,但是到本地文件夹也没找到
解决方法:增加export LC_CTYPE=en_US







