关于linux中alias的应用

1.如题(系统是win os)

我在本地安装的是cygwin。。

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

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

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

比如

远程服务器是:

development.pvgl.test.com

连接的端口号是:9022

用户名:tomcat

密码: 无

一般的做法是:

ssh -p 9022 [email protected]

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

于是我可以如下用alias:

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

user是当前登录用户名。

编辑 .bashrc如下:

alias devser='ssh -p 9022 [email protected]'

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

直接在登录窗口输入:

devser

即可.

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

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

通过cgydrive进入test目录:

一般做法是:

scp -P 9022 test.txt [email protected]:/tmp

执行命令即可、、、

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

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

答案是否定的、、、

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

我们可以用function来定义

同样进入 .bashrc 中编辑:

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

#copy file to development server

function scpfdev(){ scp -P 9022 $1 [email protected]:$2; }

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

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

scpfdev test.txt /tmp/

即可。

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

#copy file to development server

function scpddev(){ scp -r P 9022 $1 [email protected]:$2; }

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

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

scpddev test /tmp/

即可。

猜你喜欢

转载自lxs647.iteye.com/blog/1264772