免密码复制远程linux服务器文件

#!/bin/bash
#
#****
#Author: zhang
#QQ: 531908902
#Date: 2019-01-15
#FileName: expect_scp.sh
#URL:
#Description: The test script
#Copyright (C): 2019 All rights reserved
#****
cat name.txt |while read ip user passwd;do
expect <<EOF
spawn scp [email protected]$ip:/date/* /date/dong
expect "yes" {send "yes\n" }
expect "est" {send "$user\n" }
expect "password" {send "$passwd\n" }
expect eof
EOF
done

其中 name.txt 文件和该脚本都在同一个文件夹
name.txt 格式
172.20.120.39 root centos7
cat的行赋值给while循环的变量
read赋值是一行一行的读取的 read 后面的变量以空格 分别获得 name.txt第一行的值,name.txt 格式也是空格隔开
从而赋值以后 执行后面的命令

原文地址:http://blog.51cto.com/14114496/2343103

时间: 2025-01-05 21:02:53

免密码复制远程linux服务器文件的相关文章

windows使用xshell免密码登陆远程Linux服务器教程

windows使用xshell免密码登陆远程Linux服务器教程 1.使用xshell自带工具生成私钥 步骤: 2.在linux服务器端生成密钥 1.生成服务器端密钥命令 #ssh-keygen (保存位置默认,全部回车即可.) 3.复制本地密钥到远程linux服务器端 1.复制本地密钥到远程linux服务器端 2.把本地密钥命名为authorized_keys #cat 本地密钥 >> authorized_keys 3.放在~/.ssh/下且权限为600. #chmod 600 autho

SSH连接下复制远程linux服务器文件到本地的命令(zz)

原文链接 许多人使用简易的SSH连接工具,有时候需要在SSH下复制文件到本地查看比较方便,我给大家介绍一个简单的命令SCP. scp是有Security的文件copy,基于ssh登录.操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令. scp /home/daisy/full.tar.gz [email protected]:/home/root 然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了. 如果想反过来操作,

通过 SSH免密码登录远程Linux主机

主机1:172.16.222.88 [[email protected] ~] 主机2:172.16.198.23 [email protected]:~# [[email protected] ~]# ssh-keygen -t rsa   ===>在主机1上操作,生成密钥文件 Generating public/private rsa key pair. Enter file in which to save the key(/root/.ssh/id_rsa): /root/.ssh/id

ssh-keygen生成公私钥免密码登录远程服务器

经常需要登录远程服务器很麻烦,因此在此记录下免密码登录远程服务器的那些事. 1. 比较常用而保险的ssh-keygen公私钥配对登录. 2. 终端输入命令:ssh-keygen -t rsa 这里需要你输入一个钥匙的名称,不输入默认为:id_rsa (私钥) 和 id_rsa.pub(公钥) 通常在企业里面一台服务器有很多人使用,因此默认的名称很可能已经有人使用了,所以这里可以输入一个你自己的名字为好. 3. 输入密钥名称后,回车,会让输入密码. 4. 因为我们要免密码登录,所以别填,直接回车2

通过终端使用ssh-keygen免密码登录远程服务器

使用终端ssh登录远程Linux服务器,每次不输入如密码 原理:使用keygen认证,实现免密码验证即可登录服务器. Linux(包括Mac OS): $ ssh-keygen /*生成密钥*/ $ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] (-p port) /*copy密钥到服务器*/(如果系统不支持ssh-copy-id命令,可以使用 `brew install ssh-copy-id`) $ ssh [email protect

Linux入门(五)linux服务器文件远程管理

 1 使用filezila远程管理linux服务器文件 filezila下载地址:https://filezilla-project.org/ filezila默认只能登录普通用户,如果想要root用户也能登录, 必须修改/etc/ssh/sshd_config,把里面的PermitRootLogin改为yes,然后重启ssh, sudo service ssh restart 2 ubuntu系统配置文件目录:/etc 各组件配置文件位置 2.1apache  /etc/apache2 2.2

Linux下不借助工具实现远程linux服务器上传下载文件

# Linux下不借助工具实现远程linux服务器上传下载文件 ## 简介 - Linux下自带ssh工具,可以实现远程Linux服务器的功能- Linux下自带scp工具,可以实现文件传输功能 ## 登录服务器 - `ssh [email protected]` 登录服务器```PC:~$ ssh [email protected][email protected]'s password: ``` ## 文件传输 - 下载文件- `scp [email protected]:/data/log

SSH 免密码登录——批量分发服务器

需求:nfs服务器兼做批量分发服务器.backup备份服务器.mb01服务为批量分发的客户端.通过NFS服务器讲编辑好的hosts文件批量分发到备份服务器和mb01服务器的./etc/下.使内网环境可以使用/etc/hosts 文件做正向.反向的域名解析. 由于root具有最大的权限,所以不建议使用root用户进行SSH免密码登录,而是在所有的机器上建立相同的普通用户,通过普通用户的SSH免密码登录,使用scp 命令将hosts文件分发到客户端的该普通用户的家目录下.在各客户端为该普通用户通过s

Idea 2019.2 (Ultimate Edition) 部署项目到远程Linux服务器tomcat 详解

前言:之前做项目,一直都是把本地的源码打成war包上传到远程服务器tomcat/webapps下.每次都要重新打成war进行项目的部署,感觉特别繁琐. 步骤: 1.环境配置 前提:保证在远程linux服务器上安装好tomcat. 2.Linux服务器tomcat配置 (1)在Linux上找到我们安装的tomcat的目录: (2)在tomcat下的bin中找到catalina.sh,进行远程发布需要在catalina.sh这个启动脚本中增加一些配置: 编辑catalina.sh文件: 按inset