shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量、条件、算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多。但是有时候我们可能会需要实现和交互程序如ftp,telnet服务器等进行交互的功能,这时候我们需要用到shell的自动交互功能.最简单的例子就是创建用户,我创建100个用户,初始密码为123,那么要是挨着
Shell 脚本自动输入密码的三种方式 注意,如果创建.sh文件后不可以执行,请执行sudo chmod 755 文件名.sh来修改权限。方式一使用 echo “密码” | (管道符)使用场景: sudo 命令在使用普通用户执行 root 命令时有时候会需要输入密码,并且在输入密码后一段时间不需要再次输入(但是不影响),这时候可以使用echo "密码" | sudo 命令比如我需要一键清空服务器,
转载 2023-11-21 17:47:52
31阅读
平时在控制台输入指令如:sudo、ssh、ftp或者修改admin权限的文件时候都会要求输入password,但是在she'll脚本运行过程中该如何交互实现自动输入密码呢?下面总结三种实现方法:一、重定向:用重定向方法实现交互的前提是指令需要有参数来指定密码输入方式,如ftp就有-i参数来指定使用标准输入输入密码shell用重定向作为标准输入的用法是:cmd<<delimiter ,
前言:   ssh命令, 没有指定密码的参数. 以至于在脚本中使用ssh命令的时候, 必须手动输入密码, 才能继续执行. 这样使得脚本的自动化执行变得很差, 尤其当ssh对应的机器数很多的时候, 会令人抓狂.本文讲解了两种方式, 一种借助expect脚本, 一种借助sshpass来实现.*) 借助expect脚本来实现1. expect不是系统自带的工具, 需要安装yum install expe
 为啥要加密shell脚本以我个人的需求为例,我要做一个自动远程登录的脚本,每次手动输密码太慢,而且输的多了密码也容易泄露;直接把密码写在脚本里,快确实是快,但是安全性让人无法忍受,写脚本的时候都有可能被过路的不小心看到密码,这就太蛋疼了。 最终解法就是,把密码写在脚本里,作为参数传给下一个脚本让其用来登录,而保存密码脚本,使用某种手段加密,令其不可读但是可执行。 加密方法介绍和实战经
背景:在远程文件下载时,需要输入对方的服务器密码shell不支持交互输入内容,可以用下面两种方式实现 一.在shell脚本中嵌入expect来实现密码输入expect是一个自动交互功能的工具。expect是开了一个子进程,通过spawn来执行shell脚本,监测到脚本的返回结果,通过expect判断要进行的交互输入内容(send)1.安装expect 需要先安装tcl:apt
转载 2023-09-04 21:47:29
1105阅读
这里我们主要讲使用expect实现自动输入功能:安装:CentOS下安装命令,如下:yum install  expect开始之前的一个简单实例:#!/usr/bin/expect spawn ssh root@1.1.1.1 expect "*password:" send "123\r" expect "*#" interactExpect是一个用来处理交互的命令。我们可以使用exp
转载 2024-05-09 10:41:36
308阅读
# 如何在shell脚本输入MySQL密码 在编写shell脚本时,经常会需要与数据库进行交互,其中包括连接到MySQL数据库。在连接到MySQL数据库时,我们需要输入用户名和密码。但是,将明文密码硬编码到脚本中是不安全的做法。因此,我们需要找到一种更安全的方法来输入MySQL密码。 ## 使用MySQL配置文件 MySQL提供了一个配置文件`~/.my.cnf`,可以在其中保存MySQL
原创 2024-02-19 06:17:16
206阅读
对于Linuxer来说,自动补全是再熟悉不过的一个功能了。当你在命令行敲下部分的命令时,肯定会本能地按下Tab键补全完整的命令,当然除了命令补全之外,还有文件名补全。Bash-completion自动补全这个功能是Bash自带的,但一般我们会安装bash-completion包来得到更好的补全效果,这个包提供了一些现成的命令补全脚本,一些基础的函数方便编写补全脚本,还有一个基本的配置脚本。但也正如
转载 2024-07-30 11:03:42
162阅读
 背景:在远程文件下载时,需要输入对方的服务器密码shell不支持交互输入内容,可以用下面两种方式实现 一.在shell脚本中嵌入expect来实现密码输入expect是一个自动交互功能的工具。expect是开了一个子进程,通过spawn来执行shell脚本,监测到脚本的返回结果,通过expect判断要进行的交互输入内容(send)1.安装expect 需要先安装t
1.在生成环境中经常要修改服务器的密码,以保证安全,可以用shell编写脚本。用ssh直接修改对方服务器的密码可以用ssh 用户名@登录IP 后跟命令就可以实现,但是需要管理员输入密码后才能操作,为了不让管理员手动进行输入所以用expect解决此方案,由于expect是单独的命令在/bin/bash是无法使用的,所以必须要嵌套使用,<<代表以什么结尾,EOF代表以EOF结尾,spawn
转载 2023-12-30 16:14:04
227阅读
Linux系统中,用户在安装软件或执行管理员权限操作时常常需要输入密码。在命令行中,用户通过Shell输入命令并执行操作,而在输入密码时则需要特殊的处理方式。 红帽Linux(Red Hat Linux)是一种基于Linux内核的操作系统,提供了丰富的命令行工具和功能。在红帽Linux中,用户在进行需要管理员权限的操作时,需要使用sudo命令来提升权限。在输入密码时,用户在终端中无法看到密码
原创 2024-02-26 10:28:32
132阅读
Linux系统中,shell是一个重要的组成部分,它为用户提供了与操作系统交互的界面。作为shell的用户,我们在命令行中输入各种命令来完成任务。有时候,我们会遇到需要输入密码的情况。本文将探讨在Linux shell输入密码的相关问题。 在Linux shell中,输入密码是一种常见的操作。比如,在安装软件或应用程序时,我们往往需要输入管理员密码来进行确认和授权。这样做是为了确保只有授权用
原创 2024-02-01 13:42:31
451阅读
Linux操作系统中,Shell脚本是一种强大的工具,可以帮助用户自动化执行一系列命令。在Shell脚本中,经常需要用户输入一些参数或数据来指导脚本的执行。而在Linux中使用红帽发行版的操作系统时,输入这些参数或数据的方式也有一些特殊的技巧。 在Linux中,有很多种方式可以从用户那里获取输入数据,其中最简单的方式就是使用read命令。read命令可以从标准输入中读取用户输入的数据,并将其赋
原创 2024-05-21 10:15:14
98阅读
echo  '-e' 回车换行  ‘-n’ 回车不换行eg.  3.2.1 readread语句可以从键盘或文件的某一行文本中读入信息,并将其赋给一个变量read var1  var2  ...  如果只指定了一个变量,那么read将会把所有的输入赋给该变量,知道遇到第一个文件结束符或回车;如果给出了多个变量,它们按顺序分别被赋予不同的变量。shell将用空格作为变量之间的分隔
Shell脚本学习之旅(5)— 用户输入一、命令行参数向shell脚本传递数据的最基本方法是使用命令行参数。命令行参数允许在运行脚本时向命令行添加数据。 bash shell会将一些称为位置参数( positional parameter)的特殊变量分配给输入到命令行中的所有参数。这也包括shell所执行的脚本名称。位置参数变量是标准的数字: $0是程序名, $1是第一个参数, $2是第二个参数,
输入输出的操作使用#!/bin/bash # 输入/输出重定向 # 大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端。 # 需要注意的是文件描述符 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错
平时运维中有时会遇到需要更改服务器的管理员,如果服务器比较多的时候,我们可以编写一个来实现,省时省力。linux使用SSH登陆时需 要手动输入yes 来确认连接,所以首先要解决这个问题,让实现远程执行命令无须人工干预。第一步 使用ssh-keygen创建本机的公钥和私钥创建成功后会在/root/.ssh下生成私钥和公钥第二步 使用ssh-copy-id复制公钥到远程主机及expect内
转载 2024-01-31 06:58:25
93阅读
linux shell脚本批量修改密码,无需交互输入
原创 2014-09-23 18:04:57
2103阅读
数据的展示理解输入与输出标准文件描述符STDIN(标准输入)STDOUT(标准输出)STDERR(标准错误)重定向错误只重定向错误重定向错误和数据在shell脚本中重定向输出临时重定向永久重定向在shell脚本中重定向输入创建自己的重定向创建输出文件描述符重定向文件描述符创建输入文件描述符创建读写文件描述符关闭文件描述符列出打开的文件描述符阻止命令输出创建临时文件创建本地临时文件在/tmp 目录
转载 2024-04-22 18:50:18
1134阅读
  • 1
  • 2
  • 3
  • 4
  • 5