关于linux中alias的应用

本文介绍如何在cygwin环境下使用alias和function简化远程Linux服务器的连接和文件复制操作,通过定义别名和自定义函数,减少输入复杂指令的步骤,提升效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.如题(系统是win os)

 

我在本地安装的是cygwin。。

 

但是由于频繁的登录linux服务器,其名字是是好长的一串、、、

这就导致了每次登录的时候都比较麻烦、

 

于是后来就想到用alias的办法,给它取个简单易用的名字:

 

比如

 

远程服务器是:

 

development.pvgl.test.com

 

连接的端口号是:9022

 

用户名:tomcat

密码: 无

 

一般的做法是:

 

ssh -p 9022 tomcat@development.pvgl.test.com

 

每次登录都需要输入上面的一大串,是那么的麻烦.

于是我可以如下用alias:

 

在cygwin安装目录下的/home/user /目录下:

user是当前登录用户名。

 

编辑 .bashrc如下:

 

alias devser='ssh -p 9022 tomcat@development.pvgl.test.com'

 

这样定义好了之后,每次登录是,直接连ssh都省了。

 

直接在登录窗口输入:

 

devser

 

即可.

 

2. 定义scp的别名(严格意义上来讲,不是定义别名):

 

比如我要将test目录下的test.txt 和test 目录拷贝到上面的服务器中的tmp目录下:

通过cgydrive进入test目录:

 

一般做法是:

 

scp -P 9022 test.txt tomcat@development.pvgl.test.com:/tmp

 

执行命令即可、、、

 

如果经常这么输入的话,是很繁琐的、、、

 

再者,可不可以像上面一样为scp定义一个类似的别名呢??

答案是否定的、、、

 

但是方法总归是有的、、、

 

我们可以用function来定义

 

同样进入 .bashrc 中编辑:

在# Some example functions 下添加如下一句:

 

#copy file to development server

function scpfdev(){ scp -P 9022 $1 tomcat@development.pvgl.test.com:$2; }

 

【$1】【$2】是两个变量。【$1】是代表要拷贝的源文件,【$2】是代表目标文件夹.

 

这时,我们可以在cygwin窗口中执行如下语句:

 

scpfdev test.txt /tmp/

 

即可。

 

同样,如果要拷贝目录,可以定义如下:

 

#copy file to development server

function scpddev(){ scp -r P 9022 $1 tomcat@development.pvgl.test.com:$2; }

 

注意:上面的function中多了个【r】参数.

 

这时,我们可以在cygwin窗口中执行如下语句:

 

scpddev test /tmp/

 

即可。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值