首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux expect详解

Linux expect详解 2018-07-11 分类:Linux Shell / 系统运维 / 编程开发 阅读(6670) 评论(0)  随处可见的expect 第一次见expect这个命令还是我第一次参加全量上线的时候...实在是看不懂这个expect命令的用法,所以就找时间总结了这篇关于expect命令的文章。...先抛出一个问题 现在有两台Linux主机A和B,如何从A主机ssh到B主机,然后在B主机上执行命令,如何使这个过程实现全程自动化?...这就要用到今天这篇文章总结的expect了。 expect是什么? expect是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预。...实用代码分析 上面对expect进行了总结,特别是对一些常用的命令进行了详细的说明。下面就通过一些常用的expect脚本来具体的说明如何使用expect来完成日常的一些工作。 #!

3.2K50
您找到你想要的搜索结果了吗?
是的
没有找到

# Linux expect命令详解

Linux系统中,expect 是一款非常有用的工具,它允许用户自动化与需要用户输入进行交互的程序。本文将深入探讨expect命令的基本语法、使用方法以及一些最佳实践。...linux-expect.jpg 什么是Expect命令? expect 是一个用于自动化交互式进程的工具。它的主要功能是根据程序的输出模式(patterns)发送输入,从而实现自动化交互。...expect eof': 这表示脚本会等待子进程的结束(eof 表示 end of file)。一旦子进程结束,整个 expect 脚本也就结束了。...错误处理 使用 expect_before 和 expect_after 处理在其他期望之前或之后出现的常见模式,提高脚本的健壮性。 以下是一个简单的expect脚本,用于自动化SSH登录 #!...expect "$ " send "ls\n" expect "$ " send "exit\n" 脚本执行过程如下 _20231202223700.jpg 总结 expect命令是Linux系统中一个非常实用的工具

18810

Linux命令su、sudo、sudo su、sudo -i使用和区别

sudo 与 su 两个命令的最大区别是: sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。另外一个区别是其默认行为。...su 用以切换成不同的用户的身份 ? 默认只是切换身份,并没有切换环境变量,环境变量依然是普通用户的。...su root 输入root密码后切换之root用户但是pwd目录不变 ? su - root 输入root密码后切换之root用户但是pwd目录/root ?...su :切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。...sudo su 运行sudo命令给su命令提权,运行su命令。要求执行该命令的用户必须在sudoers中才可以。 来自:Linux迷 链接:https://www.linuxmi.com/

13.8K10

linuxsusu -之间你知不道的事

su 命令用于切换到另一个用户,即更改用户ID。在正常登录会话期间,如果没有执行username例如su -,它默认以root用户身份登录。...$ su rumenz 要注意用户对用户rumenz保持环境deploy 原始登录会话,当前工作目录和可执行文件的路径也保持不变。...当你使用 su -或-l或--login时,它会为你提供一个类似于正常登录时的登录界面。下面的所有命令都是等价的。...$ su - rumenz OR $ su -l rumenz OR $ su --login rumenz 在这种情况下,用户rumenz提供了自己的默认登录环境,包括可执行文件的路径;他还会进入他的默认家目录...重要的是,当你在su没有username,将自动成为超级用户。将获得root的默认环境,包括可执行文件更改的路径。还将进入 root 的家目录: $ su

2.8K20

linux expect中的timeout设定

在做日志分析工具时,发现在屏幕上拿到日志结果会有点慢,然后查了一下expect ssh timeout的设置,原来是这里有个默认时间的问题,所以整理一下: expect脚本我们都知道,首先spawn我们要执行的命令...,然后就给出一堆expect的屏幕输出,如果输出match了我们的expect的东西,我们就会send一个命令上去,模拟用户输入。...但是expect中等待命令的输出信息是有一个timeout的设定的,默认是10秒。这个特性是防止那些执行死机的命令的。...一旦到了这个timeout,还是没有屏幕输出的话,expect脚本中下面的代码就会执行。或者我们在expect脚本中如果定义了timeout的响应代码的话,这些代码就会被执行。 ...解决这样的问题非常简单,最简单的办法就是在expect脚本的开头定义:  set timeout -1 -- 没有timeout set timeout XX -- 设定具体的timeout时间(秒)

3.5K20

Linux 命令 su 和 sudo 的区别?

Linux 中新建用户的命令是 useradd ,一般系统中这个命令对应的路径都在 PATH 环境变量里,如果直接输入 useradd 不管用的话,就用绝对路径名的方式:/usr/sbin/useradd...su 命令介绍及主要用法 首先需要解释下 su 代表什么意思。 之前一直以为 su 是 super user,查阅资料之后才知道原来表示 「switch user」。...2.1 - 参数 su 的一般使用方法是: su 或者 su - 两种方法只差了一个字符 -,会有比较大的差异: 如果加入了 - 参数,那么是一种...3.1 主要用法 我们在 Linux 中经常会碰到 Permission denied 这种情况,比如以 ubuntu 用户的身份查看 /etc/shadow 的内容。...:如果我们的 Linux 系统有很多用户需要使用的话,前者要求所有用户都知道 root 用户的密码,这显然是非常危险的;后者是不需要暴露 root 账户密码的,用户只需要输入自己的账户密码就可以,而且哪些用户可以切换到

12010

linuxsu与sudo的区别

su 命令介绍及主要用法 首先需要解释下 su 代表什么意思。 之前一直以为 su 是 super user,查阅资料之后才知道原来表示 switch user。...主要用法 我们在 Linux 中经常会碰到 Permission denied 这种情况,比如以 ubuntu 用户的身份查看 /etc/shadow 的内容。...:如果我们的 Linux 系统有很多用户需要使用的话,前者要求所有用户都知道 root 用户的密码,这显然是非常危险的;后者是不需要暴露 root 账户密码的,用户只需要输入自己的账户密码就可以,而且哪些用户可以切换到...原文:https://tanjuntao.github.io/2020/05/23/Linux-%E5%AD%A6%E4%B9%A0%E8%AE%B0%E5%BD%95%EF%BC%9Asu-%E5%92%...8C-sudo/ 相关文章 linux之sudo使用技巧汇总

3K10

Linuxsu,sudo,sudo su,sudo -i命令的使用和区别

sudo 与 su 命令的区别: sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。...sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。...更多可参考:Linux 命令 su 和 sudo 的区别 su 切换不同的用户的身份: 默认只是切换身份,并没有切换环境变量,环境变量依然是普通用户的。...su root 输入root密码后切换到root用户但是pwd目录不变 su - root 输入root密码后切换到root用户但是pwd目录/root sudo 命令: sudo -i root 与...su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root 账户,密码也为超级账户的密码,没有时间限制。

7.5K20

Linux 命令 su 和 sudo 的区别

Linux 中新建用户的命令是 useradd ,一般系统中这个命令对应的路径都在 PATH 环境变量里,如果直接输入 useradd 不管用的话,就用绝对路径名的方式:/usr/sbin/useradd...2. su 命令介绍及主要用法 首先需要解释下 su 代表什么意思。 之前一直以为 su 是 super user,查阅资料之后才知道原来表示 switch user 。...知道 su 是由什么缩写来的之后,那么它提供的功能就显而易见了,就是切换用户 2.1 - 参数 su 的一般使用方法是: su 或者 su - 两种方法只差了一个字符...3.1 主要用法 我们在 Linux 中经常会碰到 Permission denied 这种情况,比如以 ubuntu 用户的身份查看 /etc/shadow 的内容。...: 如果我们的 Linux 系统有很多用户需要使用的话,前者要求所有用户都知道 root 用户的密码,这显然是非常危险的; 后者是不需要暴露 root 账户密码的,用户只需要输入自己的账户密码就可以,而且哪些用户可以切换到

3.7K20

susu -的区别

susu - 是用于切换用户的命令,但它们在行为上有一些重要的区别。su 命令su 是 "switch user" 的缩写,用于切换到另一个用户的身份,但不改变环境变量。...当您使用 su 命令切换到另一个用户时,环境变量(包括路径、用户目录等)并不会被修改。...su - 命令su - 命令也被称作 "su -l"(dash ell)或 "su --login",它同样用于切换到另一个用户的身份,但是与简单的 su 不同的是,它会启动一个完整的登录会话。...使用 su - 命令登录后,会话会以目标用户的身份启动,并且包括了目标用户的环境变量和配置文件。这意味着,通过 su - 切换用户后,您会进入一个完全新的Shell会话,就好像您以目标用户登录一样。...总结来说,su 命令主要用于快速切换用户,而 su - 命令用于完全以目标用户的身份启动一个新的Shell会话,包括环境变量和配置文件。

15010

linuxsu和sudo命令如何使用?

今天这篇我们来学习和了解“linuxsu和sudo命令如何使用?”,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解“linuxsu和sudo命令如何使用?”有一定的帮助。...使用 su 命令临时切换用户身份 1、su 的适用条件和威力   su命令就是切换用户的工具,怎么理解呢?...=COMMAND 执行一个命令,然后退出所切换到的用户环境;   至于更详细的,请参看man su ;   3、su 的范例:   su 在不加任何参数,默认为切换到root用户,但没有转到root用户家目录下...所以集权而治的存在还是有一定道理的; 二. sudo 授权许可使用的su,也是受限制的su   1. sudo 的适用条件   由于su 对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理员所管理的系统...关于“linuxsu和sudo命令如何使用?”就介绍到这了,如果大家觉得不错可以参考了解看看。

3K20
领券