linux之间
传送单个文件:
scp 文件 name@10.10.10.10:上传要存的路径
传送文件夹:
scp -r 文件夹 name@10.10.10.10:上传要存的路径
下载单个文件:
scp name@10.10.10.10:文件 本地要存的路径
下载文件夹:
scp -r name@10.10.10.10:文件夹 本地要存的路径
带密码操作:
在上面语句前面增加 sshpass -p '密码’
linux向windows免密传文件
首先需要在windows机上安装openssh:链接 https://openssh.en.softonic.com/
由于用命令行进行传输需要输入windows机的账户和密码,但是windows上的账户半天都找不到是什么,于是用opnessh创建虚拟windows账户。以下是详细操作
启动之后,会出现一个openssh的图标
双击,出现如下窗口,点击红圈内容
点击Add添加虚拟账户
分别设置账户密码,这里账户记为AAA,密码设为了123
完成后在界面会出现一个一行为AAA的
以下内容在linux命令行内输入:
sshpass -p '123' scp 你要传的文件的路径 AAA@windows机IP地址:/e:/new/
AAA就是你上面设置的虚拟账户,123是密码,以上表示将你的文件传到windows机的E盘里的new文件夹里
windows向linux免密传文件
以下内容参考源自:https://my.oschina.net/u/3307502/blog/1587025
windows端需要下载pscp和puttygen,打开下载链接:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
在C:\Program Files (x86)创建一个pscp文件夹把这俩放进去(其实放哪都可以)
这2个文件就相当于是命令行的命令了,为了能在任何地方都使用他,我们需要配置环境变量,操作如下:
1.右键我的电脑——点击“属性”
2.高级系统设置
3.点击环境变量
4.选中Path,然后点击编辑
5.将pscp和putty所在路径,即C:\Program Files (x86)\pscp,添加进去。这样就可以在任何地方打开命令行使用这2个命令了。
手动输入密码传输:
下面的免密传输主要用于代码脚本中,如果只是传输零散文件手动输入密码即可
传文件:pscp 文件 user@服务器ip:/home/user/
传文件夹:pscp -r 文件夹 user@服务器ip:/home/user/
免密传输:
需要配置点东西。
打开puttygen,点击generate
在此空白区域随便移动鼠标,上面进度条就会满
点击Save private key,将私钥保存到C:\Program Files (x86)\pscp\(其实存哪也可以,放一起好管理而已),命名为club.ppk
接着,进入你要免密传文件到的linux服务器,在你的用户目录即 cd ~ 的这个地方,进入.ssh目录(这里有一个点注意,表示隐藏文件夹,没有就自己创一个),新建并编辑文件 authorized_keys,将下图这个选中这一串公钥,复制到authorized_keys文件里去,最后的 类似rsa-key-20171208这样的不要放进去,最终以两个等号结尾。至此完成
传文件:pscp -i C:\Program Files (x86)\pscp\club.ppk file user@服务器ip:/home/user/
传文件夹:pscp -i C:\Program Files (x86)\pscp\club.ppk -r .\folder user@服务器ip:/home/user/
windows本地文件夹必须要用“\”,若用“/”会把里面的文件散开来传输