macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解

这篇具有很好参考价值的文章主要介绍了macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

说明:使用了macOS后发现,win系统能使用的xshell、xftp等连接服务器及其文件传输等软件均不能使用了,没有兼容的版本。所以我们刚切换到mac系统该如何去适应呢。

一、连接远程服务器

macOS中前文也说道我们使用的是iterm2进行终端控制的,所以连接远程服务器可以通过ssh来连接

方式一:ssh 用户名@公网ip的方式进行连接

macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解,other,macos,服务器
缺点:每次都需要输入命令且输入密码来进行登陆,比较繁琐
疑问:有没有一种只输入一次密码就能每次简单登陆的方法呢?

方式二:通过脚本进行登陆

  1. 找一个地方创建脚本
  2. 编辑脚本,内容如下:
#!/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]:服务器IP地址
# [lindex $argv 3]:服务器密码
  1. 编辑完成给予脚本执行权限
# 文件名字可以随便取
chmod 777 ssh_server.sh
  1. 打开iTerm2,打开Preferences配置界面,Profiles -> general,左下角点击+号,新建profile,参考下面图片在对应位置输入内容即可。
    macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解,other,macos,服务器

Name:根据需求输入,通常选择标识性较强的内容便于区分,例如服务器的IP地址

Command:这里选择login Shell

Send text at start :填写格式形如A B C D E这样,每一个部分之间用空格隔开,根据自己实际情况填写,下面是对每一部分内容的解释

A代表咱们上面写的本机保存sh脚本的路径:/Users/iterm/ssh_server.sh

B代表服务器端口号一般远程连接端口为:22

C代表服务器用户名一般为:root

D代表服务器IP:根据服务器对外暴露的公网IP填写

E代表服务器密码:根据自己实际的服务器密码填写
  1. 设置好之后打开iTerm2,点击profiles,点击前面自己新增的连接远程服务器的profile的名字。首次连接需要输入一次服务器密码,之后再连接就免密码登陆了。
    macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解,other,macos,服务器

二、文件传输

方式一:通过app去实现文件传输

  • transmit(mac系统最推荐的,没有之一) 官网收费有点贵,可以通过万能的某宝
  • filezilla
  • 等等

方式二:通过lrzsz

  • 给mac以及服务器都装上lrzsz
# mac安装通过homebrew
brew install lrzsz
# Linux系统安装通过yum
yum -y install lrzsz
  • mac下载iterm2-zmodem
 wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-send-zmodem.sh

 wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2-recv-zmodem.sh
# 如果wget notfound  
brew install wget

# 如果网络不佳直接去github下载
# https://github.com/robberphex/iTerm2-zmodem
  • 下载下来的两个文件iterm2-recv-zmodem.sh和iterm2-send-zmodem.sh需要修改一下rz和sz的路径因为文件对应的还是原来intel芯片下的mac通过homebrew下载的路径,m芯片homebrew安装路径变了

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

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
	# 此处需要修改
	# usr/local/bin/sz "$FILE" --escape --binary --bufsize 4096
	/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/sz "$FILE" --escape --binary --bufsize 4096
	sleep 1
	echo
	echo \# Received "$FILE"
fi

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

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"
	# /usr/local/bin/rz --rename --escape --binary --bufsize 4096 
	/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/rz --rename --escape --binary --bufsize 4096
	sleep 1
	echo
	echo
	echo \# Sent \-\> $FILE
fi
  • 查看路径方法
brew list lrzsz
# 以下是输出结果
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lrb
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lrx
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lrz
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lsb
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lsx
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/lsz
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/rz
/opt/homebrew/Cellar/lrzsz/0.12.20_1/bin/sz
/opt/homebrew/Cellar/lrzsz/0.12.20_1/share/man/ (2 files)
  • 赋予两个脚本的执行权限
chmod 777 /usr/local/bin/iterm2-*
  • 设置iterm2的触发器
    macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解,other,macos,服务器
    macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解,other,macos,服务器
# 设置内容
    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
  • 重启iTerm 2 ,连接上服务器,就能通过rz、sz来上传下载文件了

注意:如果是用expect脚本登录的,无法使用lszrz。上述的脚本连接就是使用的cxpect
解决方式待更新!!!!文章来源地址https://www.toymoban.com/news/detail-637079.html

到了这里,关于macOS(m芯片)连接服务器及其进行文件传输的各种方式的详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MacOS VSCode 配置远程服务器ssh remote链接,并上传文件文件服务器

    环境: MacOS VSCode ssh remote 1. VSCode安装插件 2. 配置ssh remote链接 配置完保存; 3. 在ssh remote可以查看到配置好的远程连接 右侧两个一个是在当前窗口打开远程链接,一个是在新窗口打开远程连接,选择一个即可,我倾向于选择一个新窗口。 此时,如果远程文件夹是新创建的话

    2024年02月03日
    浏览(50)
  • SSH远程连接macOS服务器:通过cpolar内网穿透技术实现远程访问的设置方法

    macOS系统自带有Secure Shell 客户端,它可让您登录到侦听传入SSH连接的远程服务器和台式机。我们可以用 ssh username@ip 来ssh到服务器,但通常局限于局域网内的远程。 本次教程,我们将使用cpolar内网穿透工具,映射ssh服务默认端口:22端口,获取公网地址,实现在公网环境下的

    2024年02月10日
    浏览(44)
  • 【服务器使用】vscode & winscp进行服务器容器连接(含修改初始密码)

    例如节点(host)、端口(port)、密码(passwd)等信息,这个自己找组内的前辈获取即可 找到vscode里面ssh处的config文件 人工找不到的可以用【everything】模糊搜索,输入【sshconfig】即可  右键点击【打开路径】,进入config文件所在的位置 右键点击【config】,选择【通过Code打

    2024年01月21日
    浏览(33)
  • 使用 FinalShell 进行远程连接(ssh 远程连接 Linux 服务器)

    目录 前言 基本使用教程 新建远程连接 连接主机 自定义命令 路由追踪 后端开发,必然需要和服务器打交道,部署应用,排查问题,查看运行日志等等。一般服务器都是集中部署在机房中,也有一些直接是云服务器,总而言之,程序员不可能直接和服务器直接操作,一般都是

    2024年04月16日
    浏览(65)
  • 使用vscode 连接服务器 进行深度学习代码调试

    博主本来在Win上已经配好环境了,但是在跑代码的过程中,因为tensor拼接得太大了,导致笔记本内存不足,因此需要到服务器上跑 为什么选择vscode? 如果直接用xshell连接服务器,在命令行运行py文件,不是很直观,也不能debug,还不能直接输出图片。 pycharm连接服务器好像要

    2024年02月22日
    浏览(29)
  • 使用pycharm远程连接服务器,可进行远程调试

    当下,很多深度学习的模型需要高配置的设备来跑,本地的pc可能无法满足要求。所以就需要利用服务器来训练,但是在服务器上操作代码不是很方便。利用Pycharm可以在本地编写/修改代码,能够同步到服务器上,并且能直接在本地利用pycharm运行同步到服务器上的代码。非常

    2024年02月08日
    浏览(65)
  • 云服务器使用docker部署jar包及其配置文件(挂载

    闲来无事摸鱼学习docker,突发奇想想把自己之前做过的垃圾项目放到斥巨资新买的云服务器上,然在下记忆力超群(的差),遂记录于此,防止以后又不断百度。 后端项目是springboot写成,整合了mybatis,因此有一些配置文件和很多xml...而我又希望配置文件不要打包进去而是能

    2023年04月09日
    浏览(30)
  • 基于STM32F103,利用W5500芯片实现TCP客户端连接TCP服务器的实践

    尊敬的读者,您好!在这篇文章中,我们将一起深入了解如何使用STM32F103和W5500芯片,实现TCP客户端连接到TCP服务器的过程。在详细的步骤中,我们不仅会给出相关的理论介绍,同时也会提供实战代码以供大家参考和学习。希望大家在阅读完这篇文章后,能够有所收获。 实战

    2024年02月11日
    浏览(27)
  • 使用MobaXterm连接服务器并利用Anaconda进行安装pytoch框架跑深度学习模型(使用学校服务器+显卡进行深度学习)

    在开始之前你需要找学校服务器负责人 申请服务器账号和密码 以及 校内外网IP和端口号 ;另外还需要知道学校 服务器显卡cuda版本 ,以及去pytorch官网查看显卡cuda版本对应的 pytorch版本 一、安装MobaXterm 1.下载MobaXterm 软件的下载可以去这里:我都已经给大家准备好了。 在我网

    2024年02月07日
    浏览(46)
  • 安装Ubuntu服务器、配置网络、并安装ssh进行连接

    详见: U盘安装Ubuntu系统详细教程 详见:https://blog.csdn.net/davidhzq/article/details/102991577         最重要的就是下面这样图要配置好, 至于子网掩码、网关、DNS等,需要打电话去获取。也就是谁给你的ip,你就打电话向他问这些相关信息。 参考链接: https://zhuanlan.zhihu.com/p/14697

    2024年02月12日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包