返回首页

Mac arm系列iterm2工具 lrzsz使用配置

  1. 安装homebrew ,地址: https://brew.sh/
  2. 本地分别创建脚本如下:

iterm2-send-zmodem.sh

#!/bin/bash

osascript -e 'tell application "iTerm2" to version' > /dev/null 2>&1 && NAME=iTerm2 || NAME=iTerm
if [[ $NAME = "iTerm" ]]; then
        FILE=`osascript -e 'tell application "iTerm" to activate' -e 'tell application "iTerm" to set thefile to choose file with prompt "Choose a file to send"' -e "do shell script (\"echo \"&(quoted form of POSIX path of thefile as Unicode text)&\"\")"`
else
        FILE=`osascript -e 'tell application "iTerm2" to activate' -e 'tell application "iTerm2" to set thefile to choose file with prompt "Choose a file to send"' -e "do shell script (\"echo \"&(quoted form of POSIX path of thefile as Unicode text)&\"\")"`
fi
if [[ $FILE = "" ]]; then
        echo Cancelled.
        # Send ZModem cancel
        echo -e \\x18\\x18\\x18\\x18\\x18
        sleep 1
        echo
        echo \# Cancelled transfer
else
        /opt/homebrew/bin/sz "$FILE" --escape --binary --bufsize 4096
        sleep 1
        echo
        echo \# Received $FILE
fi

iterm2-recv-zmodem.sh

#!/bin/bash

osascript -e 'tell application "iTerm2" to version' > /dev/null 2>&1 && NAME=iTerm2 || NAME=iTerm
if [[ $NAME = "iTerm" ]]; then
        FILE=$(osascript -e 'tell application "iTerm" to activate' -e 'tell application "iTerm" to set thefile to choose folder with prompt "Choose a folder to place received files in"' -e "do shell script (\"echo \"&(quoted form of POSIX path of thefile as Unicode text)&\"\")")
else
        FILE=$(osascript -e 'tell application "iTerm2" to activate' -e 'tell application "iTerm2" to set thefile to choose folder with prompt "Choose a folder to place received files in"' -e "do shell script (\"echo \"&(quoted form of POSIX path of thefile as Unicode text)&\"\")")
fi

if [[ $FILE = "" ]]; then
        echo Cancelled.
        # Send ZModem cancel
        echo -e \\x18\\x18\\x18\\x18\\x18
        sleep 1
        echo
        echo \# Cancelled transfer
else
        cd "$FILE"
        /opt/homebrew/bin/rz -e -b --bufsize 4096
        sleep 1
        echo
        echo
        echo "# Sent -> $FILE"
fi
  1. 打开 iTerm2 设置:Profiles -> Advanced -> Triggers -> Edit 添加如下两条规则:
Regular Expression Action Parameters Instant
rz waiting to receive.**B0100 Run Silent Coprocess /usr/local/bin/iterm2-send-zmodem.sh 选中
**B00000000000000 Run Silent Coprocess /usr/local/bin/iterm2-recv-zmodem.sh 选中
  1. 使用说明
  • 从服务器下载文件:执行 sz -be <文件名>
  • 上传文件到服务器:执行 rz -be,然后在弹窗中选择文件即可
上一篇

已经到最前一篇啦

下一篇

Golang入门: 01 学习路线开篇