首页 > 代码库 > Linux Shell远程交互命令
Linux Shell远程交互命令
scp实现数据的拷贝
其他机子copy到本地文件:scp username@hostname/IP:filepath localpath
本地copy到其他机子:scp localpath username@hostname/IP:filepath
文件夹copy: scp -r username@hostname/IP:folderpath localpath
详细参考:http://blog.csdn.net/xifeijian/article/details/9364497
如果远程机子加密或使用安全机制,我们可能运行这个命令就需要输入密码,为使自动化,可以
#在脚本所在服务器上操作 ssh-keygen -t rsa 出来的提示可以用默认值,然后将产生的公共密钥传到目标机器 scp ~/.ssh/id_rsa.pub username@远程机器IP:/userhome/.ssh/authorized_keys |
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=111248
scp -i ${KEY} -o GSSAPIAuthentication=no (-r) sourcepath username@hostname:destpath}
Shell远程执行命令
必须要配置ssh免密码登陆。
如果是简单执行几个命令,则:
ssh username@hostname "cmd1;cmd2"
ssh tan@10.199.20.220 ‘ls ~/mnt/builds|grep 2.5‘
Note:
1. ssh后面如果想要在远程机子上执行的命令必须要有单引号或者双引号。如果不加双引号,第二个命令在本地执行
2. 两个命令之间用分号隔开
对于脚本的方式:
有些远程执行的命令内容较多,单一命令无法完成,考虑脚本方式实现:
#!/bin/bash ssh user@remoteNode > /dev/null 2>&1 << eeooff cd /home touch abcdefg.txt exit eeooff echo done!
远程执行的内容在“<< eeooff ” 至“ eeooff ”之间,在远程机器上的操作就位于其中,注意的点:
- << eeooff,ssh后直到遇到eeooff这样的内容结束,eeooff可以随便修改成其他形式。
- 重定向目的在于不显示远程的输出了
- 在结束前,加exit退出远程节点
Linux Shell远程交互命令
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。