日期:2014-05-16 浏览次数:20740 次
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/
?
即可。
?
?
?
?