macOS与CentOS之间互传文件(iTerm2与lrzsz)

版权声明:转载注明出处:邢翔瑞的技术博客https://blog.csdn.net/weixin_36474809 https://blog.csdn.net/weixin_36474809/article/details/88748878

背景;之前windows情况下,直接用MobaXterm可以用旁边的ssh简单的拖动实现文件的传输。但是macOS完全新的环境,可能需要重新更改文件传输的实现。

目的:实现macOS与CentOS之间的文件互传。

目录

一、scp命令传文件

1.1从本地复制到远程

2.2从远程复制到本地

二、运用更方便的iTerm2加rzsz

2.1 安装iTerm2

2.2 服务器安装szrz(可能不需要)

2.3 macOS端安装szrz

安装brew

用brew安装lrzsz

2.4 配置lrzsz

2.5 iTerm2 配置添加rz sz 功能

三、rzsz使用方法

rz上传到服务器

sz从服务器下载到本地

上传进度查看

四、samba


一、scp命令传文件

http://www.runoob.com/linux/linux-comm-scp.html

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。

scp [可选参数] file_source file_target 

-r: 递归复制整个目录。

1.1从本地复制到远程

命令格式:

scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file 
  • 第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
  • 第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;

例如:

scp -r /home/space/music/ [email protected]:/home/root/others/ 
scp -r /home/space/music/ www.runoob.com:/home/root/others/ 

表示复制整个文件夹过去。

2.2从远程复制到本地

从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可,如下实例

应用实例:

scp [email protected]:/home/root/others/music /home/space/music/1.mp3 
scp -r www.runoob.com:/home/root/others/ /home/space/music/

二、运用更方便的iTerm2加rzsz

https://segmentfault.com/a/1190000012166969

2.1 安装iTerm2

建议去官网下载 http://www.iterm2.com/

我们暂时没搞明白,CentOS服务器与macOS之间到底如何装lszrz,可能双端都需要装这个软件。所以我们先在服务器装szrz

2.2 服务器安装szrz(可能不需要)

linux下的yum install lrzsz

r与s以远程服务器为视角进行receive与send

sz: 服务器将选定的文件发送(send)到本地机器

rz:服务器receive本地来的文件。运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器

直接 sudo yum install lrzsz

这时直接输入rz就会给出报错:

*B0100000023be50ive.**B0100000023be50

因为sz和rz需要终端来实现。
终端就是你用来连接远程服务器的客户端,像是 XShell、SecureCRT、rxvt、putty,而不是macOS自带的终端,所以我们需要安装iTerm2

2.3 macOS端安装szrz

安装brew

brew 是 Mac 下的一个包管理工具,类似于 centos 下的 yum,可以很方便地进行安装/卸载/更新各种软件包

进入mac端,输入下面命令行

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

再次输入brew就会出现很多提示信息,表明安装成功。

用brew安装lrzsz

brew install lrzsz

安装成功后,我们需要对相应的文件进行配置。

2.4 配置lrzsz

进入文件夹下,

cd /usr/local/bin

此目录下配置两个文件:

  1. github网址: https://github.com/mmastrac/i...
  2. 也可以自己创建两个文件 并把内容粘贴进去

我们用第一种方法

从git上下载响应代码: git clone https://github.com/mmastrac/iterm2-zmodem.git
进入文件夹 cd iterm2-zmodem/
删除无用的指示文件 rm README.md
把两个文件移动入上级目录  mv * ../
回到上面 cd ..
删除文件夹 rm -rf iterm2-zmodem/
更改权限为777 : chmod 777 iterm2-*

2.5 iTerm2 配置添加rz sz 功能

点进iTerm2,

iTerm2 的设置界面 Perference-> Profiles -> Default -> Advanced -> Triggers 的 Edit

加入信息如下:

Regular expression: rz waiting to receive.\*\*B0100
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-send-zmodem.sh

Regular expression: \*\*B00000000000000
Action: Run Silent Coprocess
Parameters: /usr/local/bin/iterm2-recv-zmodem.sh

三、rzsz使用方法

rz上传到服务器

在bash中,也就是iTerm2终端输入rz 就会弹出文件选择框,选择文件 choose 就开始上传,会上传到当前目录

sz从服务器下载到本地

  • sz fileName(你要下载的文件的名字) 回车
  • 会弹出窗体 我们选择要保存的地方即可。

上传进度查看

有的rz和sz可以看到相应的文件大小,但是我们的rz和sz不知道什么原因看不到。因此下载时候可以点击文件查看属性command+i

服务器上可以另开一个终端不时地 ls -h -l 查看

四、samba

https://baike.baidu.com/item/samba/455025?fr=aladdin

https://www.jianshu.com/p/fe7fd0286c4e

samba应该为最方便的传输方法,并且可以传输大文件。

在finder界面或者桌面输入command+k、或者桌面-前往-链接服务器

其中输入samba地址即可。但是我们因为权限问题,暂时不用此方法。

后续若是使用,再回来更新。

猜你喜欢

转载自blog.csdn.net/weixin_36474809/article/details/88748878