shell脚本中如何使scp不输入密码即可传输文件

答:使用ssh密钥对

示例如下:

如果A机想要获取B机上的文件,那么需要将在A机上生成的公钥放置到B机上的指定位置

问题一:

如何在A机上生成ssh密钥对?

A:请看如何生成ssh密钥对

问题二:

将A机上的公钥如何传送到B机上? (假设B机ip地址为10.10.10.10)

A:使用scp,如 scp ~/id_rsa.pub jello@10.10.10.10:/home/jello/authorized_keys

原文地址:https://www.cnblogs.com/dakewei/p/10384713.html

时间: 2024-11-10 10:39:42

shell脚本中如何使scp不输入密码即可传输文件的相关文章

shell脚本中如何实现scp传输?

示例脚本如下: #! /bin/sh expect -c " spawn scp -r /home/jello/jello.txt jello@110.110.110.110:/home/jello/ expect { \"*assword\" {set timeout 20; send \"jello\r\"; exp_continue;} #此处的jello为密码,自行替换 } expect eof" 原文地址:https://www.cnb

使scp不用输入密码

使scp不用输入密码 有些时候,我们在复制/移动文件 到另一台机器时会用到scp,因为它比较安全.但如果每次都要输入密码,就比较烦了,尤其是在script里.不过,ssh有另一种用密钥对来验证的方式.下面写出我生成密匙对的过程,供大家参考.第一步:生成密匙对,我用的是rsa的密钥.使用命令 "ssh-keygen -t rsa"[[email protected] user1]$ ssh-keygen -t rsa Generating public/private rsa key p

如何在 Shell 脚本中执行语法检查调试模式

我们开启了 Shell 脚本调试系列文章,先是解释了不同的调试选项,下面介绍如何启用shell调试模式. 写完脚本后,建议在运行脚本之前先检查脚本中的语法,而不是查看它们的输出以确认它们是否正常工作. 在本系列的这一部分,我们将了解如何使用语法检查调试模式.记住我们之前在本系列的第一部分中解释了不同的调试选项,在这里,我们将使用它们来执行脚本调试. 启用 verbose 调试模式 在进入本指导的重点之前,让我们简要地探索下 verbose 模式.它可以用 -v 调试选项来启用,它会告诉 shel

shell脚本中if流程控制语句的应用

上篇关于测试语句的使用规则及相关使用方法,如果仅仅孤立使用时很难有其用武之地,当然在shell脚本中其实不可能孤立存在的,只有与条件语句和控制语句等搭配使用才能使其功能得到最大限度的体现,因此在日常使用中,其功能不容小觑. 一.控制流程 if控制流程可分为但分支if语句和多分支if语句,其使用语和C语言中有很多相似之处,具体用法如下文所述. 1.1但分支if语句结构: 1.2基本语法     if 条件        或    if 条件:then   //分号表示两个命令写在一行并不相互影响,

shell脚本中局部变量local

shell脚本中局部变量 在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题. (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 例1:脚本变量的作用域 #!/bin/bash #define the function ltx_func ltx_func() {    echo $v1    #modify the variable v1   

shell脚本中特定符合变量的含义

shell脚本中特定符合变量的含义: $#   传递到脚本的参数个数 $*    以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个 $$    脚本运行的当前进程PID号 $!     后台运行的最后一个进程的进程号 [email protected]   与$*相同,但是使用时用双引号,并将各个参数加双引号返回 $-     显示shell使用的当前选项,与set命令功能相同 $_    上一个命令的最后一个参数 $?     显示最后命令的退出状态,0表示执行成功

shell脚本中常见的一些特殊符号和作用详解

这篇文章主要介绍了shell脚本中常见的一些特殊符号和它的作用详解,总结的很简洁,容易看懂,需要的朋友可以参考下 在编写Shell脚本时,我们需要会用到各种各样的特殊符号,通过这些特殊符号可以使我们编写的代码更加简洁和高效,这里给大家汇总下: 1.{} 大括号: 用法一:通配符扩展eg: ls my_{finger,toe}s这条命令相当于如下命令的组合:ls my_fingers my_toeseg: mkdir {userA,userB,userC}-{home,bin,data}我们将得到

shell脚本中局部变量

在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题. (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 例1:脚本变量的作用域 #!/bin/bash #define the function ltx_func ltx_func() {    echo $v1    #modify the variable v1    v1=200 } #def

20.5 Shell脚本中的逻辑判断;20.6 文件目录属性判断;20.7 if特殊用法;20.8 20.9 cace判断(上下)

扩展: select用法 http://www.apelearn.com/bbs/thread-7950-1-1.html 20.5 Shell脚本中的逻辑判断 格式1:if 条件 ; then 语句; fi 1. 创建if1.sh测试脚本: [[email protected] ~]# vi if1.sh a=5,如果a大于3,满足这个条件,显示ok 添加内容: #!/bin/bash a=5 if [ $a -gt 3 ] then echo ok fi 2. 执行if1.sh脚本: [[e