返回顶部
首页 > 资讯 > 精选 >shell脚本怎么免交互
  • 251
分享到

shell脚本怎么免交互

2023-06-09 11:06:24 251人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关shell脚本怎么免交互,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在写shell脚本的过程中,我们经常碰到一些操作需要我们取实时指定一些参数,这就需要用到免交互了。免交互让

这篇文章将为大家详细讲解有关shell脚本怎么免交互,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

在写shell脚本的过程中,我们经常碰到一些操作需要我们取实时指定一些参数,这就需要用到免交互了。免交互让我们的shell脚本更加强大。

介绍几种免交互的方式

1.管道符

不同命令间协调工作,位于 | 左侧命令的输出结果,将作为右侧命令的输入(处理对象)

例1 免交互修改账户密码

vim pswd.sh#!/bin/bashecho "Abc1357    Abc1357" | passwd --stdin yu[root@node1 ~]# sh pswd.sh 更改用户 yu 的密码 。passwd:所有的身份验证令牌已经成功更新。

例2 免交互自动分区磁盘

vim disk.sh#!/bin/bash echo "n    p    w" | fdisk /dev/sdf

此脚本能够直接将磁盘分区,免去交互过程

2.重定向符

echo 123123 > pass.txt  #重定向输出,将123123写到指定文件中passwd --stdin yu < pass.txt #重定向输入,将指定文件中的内容取出,用于免交互更改用户 yu 的密码 。passwd:所有的身份验证令牌已经成功更新。

3.标记间的内容传递给命令

标记可以使用任意合法字符(通常为EOF),结束标记符前后不能有任何字符,包括空格

[root@node1 ~]# passwd --stdin yu << EOF> 123456> EOF更改用户 yu 的密码 。passwd:所有的身份验证令牌已经成功更新。

4.expect免交互

ssh登陆免交互

yum -y install expectvim expect.sh#!/usr/bin/expect#设置超时时间set timeout 60#参数传入set hostname [lindex $agv 0]  #追加参数0,加载第1位参赋予变量hostnameset passWord [lindex $agv 1]  #追加参数1,加载第2位参赋予变量password#追踪命令spawn ssh root@$hostname #spawn后面通常跟一个命令,表示开启了一个会话,启动进程,并跟踪后续交互信息expect {   #捕捉交互信息  "(yes/no)"  #捕捉到字符(yes/no)  {send "yes\r"; exp_continue}  #发送交互信息"yes\r";exp_continue表示允许expect继续向下执行命令  "*password"  {send "$password\r"}}interact      #把控制权交给用户控制台

例 新用户设置密码

vim expect1.sh#!/bin/bashuser=$1password=$2useradd $userexpect << EOFspawn passwd $userexpect {"密码" {send "$password\r";exp_continue}"密码" {send "$password\r";}}#expect eof  #这条命令由于passwd命令完成2次交互后系统直接关闭了进程,在打这条命令再次关闭时会报错,像ssh就可以使用这条命令来关闭。正常情况这条命令是需要有的EOF

执行脚本

./eof.sh zhangsan 123123

关于“shell脚本怎么免交互”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: shell脚本怎么免交互

本文链接: https://lsjlt.com/news/255797.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • shell脚本怎么免交互
    这篇文章将为大家详细讲解有关shell脚本怎么免交互,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在写shell脚本的过程中,我们经常碰到一些操作需要我们取实时指定一些参数,这就需要用到免交互了。免交互让...
    99+
    2023-06-09
  • 怎么在Shell脚本中实现Expect免交互
    本篇文章给大家分享的是有关怎么在Shell脚本中实现Expect免交互,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Expext概述Expect是建立在tcl基础上的一个工具,...
    99+
    2023-06-09
  • Shell脚本之Expect免交互的实现
    Expext概述 Expect是建立在tcl基础上的一个工具,Expect是用来自动化控制和测试的工具。主要解决shell脚本中不可交互的问题。有助于大规模的系统运维工作。在日常的运维与开发中,常常需要运城登录到服务器...
    99+
    2022-06-04
    Shell脚本 Expect免交互 Shell Expect免交互
  • 浅谈shell脚本免交互的四大方法
    在写shell脚本的过程中,我们经常碰到一些操作需要我们取实时指定一些参数,这就需要用到免交互了。免交互让我们的shell脚本更加强大。 介绍几种免交互的方式 1.管道符 不同命令间协调工作,位于 | 左侧命令的输出...
    99+
    2022-06-04
    shell 免交互
  • shell命令执行hive脚本(hive交互)
    目录Hive执行方式方式1方式二方式三Hive执行方式 Hive的hql命令执行方式有三种: 1、CLI 方式直接执行2、作为字符串通过shell调用hive –e执行(-S开启静默,去掉”OK&...
    99+
    2022-06-05
    shell命令执行hive shell执行hive
  • expect交互式脚本
    Solaris_change_passwd使用注意事项及说明 1. 脚本只测试了Solaris10的英文及中文版(oracle公司出品) 2. Solaris10中文版系统需要将系统字符...
    99+
    2024-04-02
  • 在golang程序中运行交互式shell脚本
    学习知识要善于思考,思考,再思考!今天编程网小编就给大家带来《在golang程序中运行交互式shell脚本》,以下内容主要包含等知识点,如果你正在学习或准备学习Golang,就都不要错过本文啦~让我...
    99+
    2024-04-05
  • Shell之免交互的实现
    目录前言一、Here Document1.Here Document概述2.基本语法格式3.Here Documen免交互4.变量设定(支持变量替换)5.格式控制6.多行注释二、Expect1.Expect概述2.exp...
    99+
    2022-07-19
    Shell 免交互
  • 浅谈Shell脚本参数与交互及常见问题
    目录一、Shell编程-脚本参数与交互及常见问题1.1 向脚本传递参数1.2 用户交互1.3 特殊变量1.4 Shell编程常见问题1.4.1 如何屏蔽命令的输出结果1.4.2 如何把一条命令分成多行编写一、Shell编...
    99+
    2022-06-04
    Shell脚本参数 Shell脚本交互
  • 怎么使用shell脚本实现ssh互信
    要使用shell脚本实现ssh互信,你可以按照以下步骤操作:1. 创建一个名为`setup_ssh.sh`的shell脚本文件。2....
    99+
    2023-09-22
    shell ssh
  • 如何实现Shell脚本中非交互式修改密码
    本篇内容介绍了“如何实现Shell脚本中非交互式修改密码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1:使用chpasswdchpassw...
    99+
    2023-06-09
  • Shell脚本中非交互式修改密码的两种方法
    今天在写一个shell脚本的时候发现需要设置用户的密码,而设置密码是交互式的,这样在脚本中显然是不太好的,因此上网查找资料,发现了以下两种常见的非交互式设置密码的方式: 1:使用chpasswd chpas...
    99+
    2022-06-04
    中非 两种 脚本
  • Shell脚本中怎么避免重复执行
    这篇文章给大家介绍Shell脚本中怎么避免重复执行,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。代码如下:# 检查通过sh命令执行的shell脚本是不是还在执行当中,避免重复执行. # 把这段代码放在需要保证唯一性的程...
    99+
    2023-06-09
  • 怎么用CSS编写脚本实现交互效果
    这篇文章主要讲解了“怎么用CSS编写脚本实现交互效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用CSS编写脚本实现交互效果”吧!如何在CSS中编写脚...
    99+
    2024-04-02
  • Linux中怎么使用expect实现脚本自动交互
    这篇文章主要介绍“Linux中怎么使用expect实现脚本自动交互”,在日常操作中,相信很多人在Linux中怎么使用expect实现脚本自动交互问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux中怎么使...
    99+
    2023-06-27
  • shell脚本怎么用
    这篇文章主要介绍了shell脚本怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。shell脚本?在说什么是shell脚本之前,先说说什么是shell。shell是外壳的意...
    99+
    2023-06-09
  • linux自动化交互脚本expect详解
    一、介绍 expect脚本是Tcl脚本语言的拓展。用来实现自动的交互式任务,无需人为干预。在实际开发中,运行shell脚本有时候会输入linux密码或者是mysql密码等,而expect可以帮我们输入。 二、安装 e...
    99+
    2022-06-03
    linux expect自动化交互脚本 linux自动化交互脚本
  • linux如何自动化交互脚本expect
    这篇文章给大家分享的是有关linux如何自动化交互脚本expect的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、介绍expect脚本是Tcl脚本语言的拓展。用来实现自动的交互式任务,无需人为干预。在实际开发中...
    99+
    2023-06-07
  • Linux shell脚本怎么用
    这篇文章主要为大家展示了“Linux shell脚本怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux shell脚本怎么用”这篇文章吧。 Linux 脚本编写基础1 语法基本介绍1...
    99+
    2023-06-09
  • 浅谈Android程序与JavaScript脚本的交互
    我们都知道,手机时代的来临的主要标志是啥?能够方便的接入互联网!互联网展现给我们的方式一般都是网页,网页中又必不可少的拥有javascript,所以说,android提供对ja...
    99+
    2022-06-06
    JavaScript Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作