Mac上的iTerm2怎么上传和下载文件

通常而言我们可能一般是使用scp命令来进行文件的下载和上传,对于习惯了window中使用xShell的用户可能更喜欢rz和sz的操作,Mac中在安装iTerm之后也能进行rz和sz的安装使用。

第一种方式

使用scp命令的形式,在两台主机之间使用scp进行上传和下载

scp -r username@ip:folder username@ip:folder

然后按照提示输入两台主机的密码

第二种方式

使用rz和sz的方式进行,在安装完成iTerm2之后打开,然后使用homebrew的方式安装lrzsz

1、安装 lrzsz

zh ~ % brew install lrzsz
==> Downloading https://homebrew.bintray.com/bottles/lrzsz-0.12.20_1.catalina.bottle.tar.gz

######################################################################## 100.0%
==> Pouring lrzsz-0.12.20_1.catalina.bottle.tar.gz
🍺  /usr/local/Cellar/lrzsz/0.12.20_1: 18 files, 473.9KB
zh ~

2、新建 iterm2-recv-zmodem.sh、iterm2-send-zmodem.sh 文件

注意是在 mac 上新建

zh bin % vi iterm2-recv-zmodem.sh
zh bin %
zh bin % vi iterm2-send-zmodem.sh

内容从 https://github.com/snow-sprite/rzsz GitHub 上复制

iterm2-recv-zmodem.sh内容如下:

#!/bin/bash
# Author: Matt Mastracci (matthew@mastracci.com)
# AppleScript from http://stackoverflow.com/questions/4309087/cancel-button-on-osascript-in-a-bash-script
# licensed under cc-wiki with attribution required 
# Remainder of script public domain

#COMMAND=$(which rz)

if [[ -f /opt/homebrew/bin/rz ]]; then
	COMMAND=/opt/homebrew/bin/rz
else
	COMMAND=/usr/local/bin/rz
fi

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"
    $COMMAND --rename --escape --binary --bufsize 4096
    sleep 1
    echo
    echo
    echo \# Sent \-\> $FILE
fi

iterm2-send-zmodem.sh内容如下:

### 
# @Author: your name
 # @Date: 2019-12-11 01:03:06
 # @LastEditTime: 2019-12-11 01:03:21
 # @LastEditors: your name
 # @Description: In User Settings Edit
 # @FilePath: /rzsz/iterm2-send-zmodem.sh
 ###
#!/bin/bash
# Author: Matt Mastracci (matthew@mastracci.com)
# AppleScript from http://stackoverflow.com/questions/4309087/cancel-button-on-osascript-in-a-bash-script
# licensed under cc-wiki with attribution required 
# Remainder of script public domain

#COMMAND=$(which sz)

if [[ -f /opt/homebrew/bin/sz ]]; then
	COMMAND=/opt/homebrew/bin/sz
else
	COMMAND=/usr/local/bin/sz
fi

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
    $COMMAND "$FILE" --escape --binary --bufsize 4096
    sleep 1
    echo
    echo \# Received "$FILE"
fi

3、设置文件权限

chmod a+x /usr/local/bin/iterm2-recv-zmodem.sh /usr/local/bin/iterm2-send-zmodem.sh

4、配置 iterm2

打开iTerm2的Preferences(快捷键command+,),然后Profiles->Default->Advanced->Triggers->Edit进入到编辑界面。

在Triggers界面点击左下角的加号按钮新建两行,Regular Expression分别为rz waiting to receive.\*\*B0100和\*\*B00000000000000,Action都选择Run Silent Coprocess...,Parameters分别为/usr/local/bin/iterm2-send-zmodem.sh和/usr/local/bin/iterm2-recv-zmodem.sh

5、测试验证

在iTerm2上输入rz,会自动弹出访问来,然后选择要上传的文件即可。

sz下载。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
iTerm2是一款免费的命令行应用,专为Mac OS用户设计。你可以在官网http://iterm2.com/上下载并安装iTerm2。安装完成后,你可以根据个人喜好进行配置。常见的配置操作包括选择主题、设置高亮、自动填充建议、隐藏用户名和主机名、分屏等。以下是一些常用的配置步骤: 1. 下载和安装iTerm2:你可以在官网上下载iTerm2的安装包,并按照提示进行安装。 2. 主题配置:iTerm2提供了多种主题供你选择。你可以在iTerm2的设置中找到主题选项,并根据自己的喜好进行选择。 3. 配置Oh My Zsh:Oh My Zsh是一款强大的终端框架,可以提供更好的终端体验。你可以通过一键安装或手动安装的方式来安装Oh My Zsh。 4. 切换zsh:安装完成Oh My Zsh后,你可以使用命令切换到zsh终端。 5. 修改主题:Oh My Zsh提供了多种主题供你选择。你可以在.zshrc文件中修改主题设置。 6. 配置Meslo字体:Meslo字体是一种常用的终端字体,你可以在iTerm2的设置中选择并配置Meslo字体。 7. 声明高亮:你可以在.zshrc文件中设置命令的高亮显示,使命令更加醒目。 8. 自动建议填充:Oh My Zsh提供了自动建议填充功能,可以根据你输入的命令自动提示可能的选项。 9. 快速隐藏和显示:iTerm2提供了快速隐藏和显示终端的快捷键,可以方便地切换终端的显示状态。 10. 隐藏用户名和主机:你可以在iTerm2的设置中隐藏用户名和主机名,增加终端的安全性。 11. 快捷键:iTerm2提供了丰富的快捷键设置,可以根据个人习惯进行自定义。 如果你想卸载Oh My Zsh或遇到其他问题,可以参考相关文档或在社区寻求帮助。希望这些信息对你有帮助!
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小慌慌

感谢博友的鼓励,快乐分享~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值