Mac/m1终端配置自动登录ssh服务器等后续操作

【Gitlab】Gitlab MAC M1通过Docker Desktop安装教程 32行# external_url 'http://192.168.1.222' #配置ssh协议所使用的访问地址和端口。66行# gitlab_rails['gitlab_ssh_host'] = '192.168.1.222'650行# gitlab_rails['gitlab_shell_ssh_port'] = 8822。#配置http协议所使用的访问地址,填写宿主机映射端口,不加端口号默认为80;如下,在external_url后面配置gitlab的访问url。点击run,弹出以下界面,配置。 阅读详情

当我们每次连接ssh服务器的时候,都要输入账号密码等重复性的操作,这些动作让我们烦不胜烦。
那怎么办呢?有没有什么玩意能让我们只输入一条命令,并且根据传参来自动的执行这些固定的操作呢?
针对这个问题,我们就可以用expect神器来写一个自动化的交互脚本来解放我们的双手了。

下面是实现流程:

  • 先定一个我们未来写脚本的文件夹
mkdir ~/my_shell
  • 进入到该目录,创建一个文件:
cd ~/my_shell
vim autossh
  • 在autossh文件中写一下我们需要的自动化的操作:
#!/usr/bin/expect -f
set timeout 30
set user admin
# 这里可以自己自由发挥,[lindex $argv 0] 就是第一个传参的值
set host 192.168.10.[lindex $argv 0]
set password xxxxxx
spawn ssh $user@$host
expect "*assword:*"
send "$password\r"
# 这里自己去匹配哦 我这里登录后是显示的 ubuntu@ubuntu:~$
# 所以我就直接匹配 *@ubuntu$* 就可以。
expect "*@ubuntu$*"
send "top\r"
# .... 等等其他操作
interact
  • 保存文件,设置一下文件的执行权限:
# 这里的权限,自己定哦,我是随便设置的
chmod 777 authssh
  • 把我们的文件目录设置到 ~/.zshrc 配置文件中,方便调用:
vim ~/.zshrc
# 把这句话放到文件最后,然后保存退出
export PATH="/Users/xxx/my_shell:$PATH"
  • 然后应用一下配置文件:
source ~/.zshrc

好啦!恭喜!现在我们就可以调用我们的 authssh 命令来自动的连接服务器啦!

authssh 109

记得点赞收藏评论哦!谢谢!

Mac上最佳SSH工具:Termius实用指南 SSH(Secure Shell)协议是一种网络安全协议,它为网络服务提供安全的传输方式,常用于远程控制和文件传输等场景。通过SSH协议,数据在互联网中传输时能够得到加密处理,保证通信的机密性和完整性。现代的SSH客户端软件,如Termius,提供了更为便捷和强大的管理远程服务器的能力。Termius是一款集成了SSH客户端功能的跨平台应用,它不仅支持SSH协议,还具备易用性强和高度可定制化的用户界面。Termius允许用户轻松管理和操作多个服务器会话,并支持使用SFTP进行安全文件传输。 阅读详情

相关推荐

Flink 作业报错——TaskManager连接不上

Flink 作业报错——TaskManager连接不上

lm223的博客 1901

MacOS配置连接服务器脚本

今天频繁登陆服务器,每次手动输入十分烦躁,这里记录下配置自动登陆服务器脚本的过程,以备下次配置或给他人借鉴 1.自动登录脚本 connect.bash #!/usr/bin/expect spawn ssh 用户名@服务器地址 expect "*password:" send "这里是登陆密码\r" expect "*#" interact 2.命令别名 MacOS的别名配置和Linux...

BoringError的博客 1331

SoC验证新思路:除了UVM仿真,你还可以试试Cadence JasperGold的形式化验证

本文深入探讨了Cadence JasperGold形式化验证在SoC设计中的创新应用,对比传统UVM仿真验证,详细解析了其数学穷尽性验证优势。通过实战案例展示了JasperGold在总线协议、时钟域交叉等关键场景的验证方法,并提供了混合验证流程设计与效能优化方案,帮助工程师提升验证效率30%以上。

weixin_30566063的博客 121

mac环境下zsh自定义命令连接(ssh)服务器

zsh自定义命令连接(ssh)服务器

uninhibited的博客 2452

3DE重客户端安装

3DE重客户端安装

m0_48170265的博客 9429

MOSFET和IGBT栅极驱动器电路的基本原理学习(2)

1.PWM直接驱动 驱动主开关晶体管栅极的最简单方法是利用 PWM 控制器的栅极驱动输出,如图 (1)如 图 8中所示,PWM 控制器和 MOSFET 之间可能有较大距离。由于栅极驱动和接地环路迹线形成的环路,这个距离形成了寄生电感,从而降低了开关速度,并导致栅极驱动波形中形成振铃。为了降低与栅极驱动连接相关的电感,需要更宽的 PCB 迹线。 (2)直接栅极驱动的另一个问题是PWM 控制器的驱动电流能力有限。极少有集成电路能提供高于 1A 的峰值栅极驱动能力。 2.旁路电容的确定 (1)位置 如果是独立的

weixin_43732932的博客 5831

Mac环境登录服务器时自动输入密码

我这里需要两次输入密码,所以写了两遍expect。在~/.bash_profile中添加命令别名。文件保存为expect_ssh.sh。这样就可以为登录服务器输入密码了。

freeRoad 1363

多源异构数据融合(Kaggle+Google Trends联合分析)

本文详细介绍了如何利用Python实现多源异构数据融合,以Kaggle电商销售数据与Google Trends搜索指数为例,展示了数据清洗、预处理、时间对齐、数据合并、相关性分析、回归建模和可视化全过程。数据预处理与内存优化通过分块加载、数据类型转换和缺失值处理,有效降低了大规模数据在内存中的占用,并确保数据质量。时间对齐与数据融合策略采用重采样与内连接方法对齐不同数据源的时间维度,实现了高质量数据的融合,为后续联合分析奠定基础。模型构建与分析。

闲人编程的博客 1016

mac 如何快速配置ssh -转载

转载地址:

weixin_56263402的博客 372

Ceph入门到精通-更换osd、扩容osd

【代码】Ceph入门到精通-更换osd、扩容osd。

隔壁老瓦的专栏 1548

【软考高级架构】论文范文16——论分布式缓存架构设计及其应用

随着互联网业务的快速发展,高并发访问和海量数据处理对系统响应时间提出了极高要求,传统基于磁盘的数据库存储已难以满足毫秒级的性能需求。分布式缓存作为一种高性能、可扩展的数据存储中间件,能够有效减轻后端数据库压力、加速热点数据访问、提升系统吞吐量,已成为高并发系统架构中的核心组件。本文以笔者主导的某大型电商平台秒杀系统建设项目为案例,围绕分布式缓存架构设计展开论述。笔者担任系统架构师,主导了缓存选型、数据分片策略、缓存一致性方案、高可用架构及缓存穿透/雪崩/击穿防护机制的设计与落地。

qq837993702的博客 163

使用expect自动登录ssh或telnet服务器

expect 自动登录 ssh telnet 服务器

macob的专栏 517

半导体晶圆调平系统:基于最小二乘法的实现方案

基于最小二乘法的晶圆调平技术通过数学建模与工程实现的结合,解决了半导体量测中高精度平面对准的核心问题。实际应用中,需根据设备特性优化采样策略、校准传感器误差,并通过实时性优化满足高产能场景需求。该方案的模块化设计(如分离数据采集、拟合计算、补偿输出)也为后续功能扩展(如引入机器学习优化拟合模型)提供了灵活性。

品质生活,极致编程。 1181

腾讯云服务器连接终极方案:用Mac终端+SSH秘钥一键登录(支持Ubuntu/CentOS)

本文详细介绍在Mac终端环境下,通过配置SSH秘钥实现一键登录腾讯云服务器的终极方案。文章涵盖秘钥标准化处理、智能SSH客户端配置、系统类型自识别脚本编写,并支持Ubuntu与CentOS系统,旨在为开发者和运维人员提供高效、安全的标准化连接工作流,显著提升服务器管理效率。

e4f5g6h7的博客 659

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Mac添加ssh config配置,快速登录Linux系统

shell中到根目录下.ssh文件夹 cd ~/.ssh/ 生成密钥(已经生成过的跳过这一步,gitlab等都需要的) ssh-keygen 创建配置文件 vim config 写入以下命令到config文件 Host myServer # 设置ssh host缩写 Hostname 47.***.***.10 # 服务器ip User root # 服...

第7维度 - 日常笔记 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

MAC 连接远程服务器,及文件操作,常用终端命令大全

一、使用ssh连接远程主机 ssh 用户名@ip地址 用户名和地址使用你要连接的服务器的。例如:ssh root@123.123.123.123 会提示y/n 一路y 之后提示输入密码 输入密码,回车 这时候会出现连接成功提示,到这一步就已经成功连接到服务器了。下面我们说下文件操作 二、服务器文件操作 1.使用菜单中Shell 选择 “新建远程连接” 2.进入“新建远程连接控制面...

gsn1125227的博客 4384

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

vscode SSH 保存密码自动登录服务器vs code

先在win local /mac 上拿到公钥和私钥,然后再把这公钥copy 进服务器。让ssh 身份认证转化为秘钥认证

weixin_40248634的博客 4万+

MAC终端存储服务器密码,实现一键登录

就只喜欢用TERMINAL不喜欢用ITERM或其他SSH工具,你懂得。 但是TERMINAL有一个缺点就是不能保存登录信息,这样每次登录服务器都要手敲一次。今天给大家分享如下方法,省事省到家啊: (请按下面步骤操作,有问题欢迎留言) 1.在TERMINAL下编辑当前用户(就是你)的profile文件,输入: vim ..bash_profile 在最后一行加入

Anthony的专栏 3021

Mac平台SSH工具与免密登录配置指南

SSH(Secure Shell)是运维工程师日常工作中最基础的远程连接协议,其核心原理是通过非对称加密实现安全通信。在Mac环境下,虽然缺乏Xshell等Windows经典工具,但通过iTerm2、Royal TSX等专业终端工具配合SSH密钥认证,可以实现更高效的服务器管理。密钥认证作为免密登录的基础技术,不仅提升操作便捷性,更是自动化运维的重要前提。实际应用中,通过合理配置~/.ssh/config文件和多密钥管理策略,可以应对跳板机、多环境等复杂场景。对于文件传输需求,Cyberduck等工具提供了

weixin_30855099的博客 410

使用mac自带的ssh工具登陆服务器

今天总算是见识到了mac作为程序员友好型电脑的强大之处。使用自带的ssh登陆腾讯云服务器。 1、使用命令行查看安装地址 (base) dghcs:~ tudghian$ whereis ssh /usr/bin/ssh 2、查看当前电脑的ssh行程 (base) dghcs:~ tudghian$ ps aux | grep ssh tudghian 20518 1.5 0...

斯坦福-MIT-Harvard-CMU 2514

Mac OS通过SSH远程登录Windows服务器的MySQL数据库

这里介绍如何通过比较简单的办法,让Mac端的Navicat能够通过SSH远程登录运行于Windows服务器上的MySQL数据库。

Sky的博客 1653

mac用自带终端shell连接服务器以及部署项目

mac用自带终端shell连接服务器以及部署项目 一、登录服务器 1、链接服务器,打开shell,点击 新建远程连接 2、点击右侧 + ,会出现弹框,输入服务器地址,点击好 3、添加完后右侧的服务器列表会出现刚才添加的内容,选中,然后在红框内输入 服务器账号,点链接进入到下一步 4、出现此图,输入服务器密码,注意,密码不会显示,输完后按回车,就OK啦,此时再进入到指定目录,进行操作。如果失败的...

weixin_42847807的博客 2561

MacBook M1芯片 安装Centos8 教程(无界面安装)

M1 安装Centos8 教程MacBook Pro M1芯片 安装Centos8 教程(无界面安装)Centos8 支持M1芯片下载地址0、Linux关机命令1、安装截图2、安装完成重启后提示如下警告⚠️:解决办法:其他两项,创建用户 和 网络配置 ,可以后面操作,无关紧要3、配置网络(由于在安装过程中没有配置网络,默认是关闭)3.1 编辑网络配置文件3.2 配置静态IP,并能够通过 SSH 连接4、关闭防火墙5、在M1芯片的MacBook上centos8安装`Parallels Tools`5.1、加载

Mr、温少的博客 2万+

MAC下生成密钥,并使用ssh密钥登录

步骤一:打开终端,输入: ssh-keygen -t rsa -C "youremail@qq.com" 一路欢快的回车,所有默认都不用改,就可以生成密钥了。 引号内是你唯一Email,这里可以作为以后Git远程仓库使用。 步骤二:查看生成的公钥和私钥: ls ~/.ssh 可以看到两个密钥文件:id_rsa(私钥) id_rsa.pub(公钥) ——...

aogouqian7476的博客 4493

Mac终端命令和连接服务器

Mac终端连接服务器远程登录 1.下载SSH客户端工具 这里推荐的SSH客户端是Royal TS SSH工具官网网站 下载免费版 下载安装即可 2.安装终端插件 点击click here 3.创建Document,配置服务器连接 在下图红框下根目录创建一个Document,免费版只能创建一个 创建后,选中Document,右键创建Terminal 配置服务器地址和端口号 Mac终端常用命令 1.文件基本属性 ll 或者 ls –l :命令显示一个文件的属性以及文件所属的用户和组 [root

weixin_42010722的博客 1626

通过密钥SSH登录

理解: 一直以来都是通过密码远程 ssh 登录到 linux服务器 最近学习 Docker 总是看到大家都设置成密钥方式登录 除了密码被破解的风险之外,到底还有哪些好处? 看到有个文章写到:如果有员工离开,只需要删除他的公钥,这还有点儿用! 但是密码还是要修改的吧!改密码和删除公钥,哪个更直接有效? 测试环境、测试目标 linux 客户端(192.168.1.191): 环...

哈哈虎的博客 4396
上一篇: Clickhouse 如何在外部存储器中进行分组Group By 设置配置项 max_bytes_before_external_group_by、max_memory_usage
下一篇: 如何使用gdb查看堆栈情况?怎么查看?bt 或 info stack 有什么区别?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

天河书阁 VicRestart

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值