导航:首页 > 程序命令 > shell切换用户执行命令

shell切换用户执行命令

发布时间:2023-05-01 01:12:46

1. SHELL脚本切换用户需输入密码

先确认一下su
-c
能否解决问题,语法
su
-
-c
以指定用户执行命令
[root@fw98
/]#
whoami
root
[root@fw98
/]#
su
-
mao
-c
whoami
mao
不能满足需求的话,可以用expect,我的环境上没有expect,不能帮你试了,大致是下面的感觉,详细你网络查一下
#!/usr/bin/expect
su
-
mao
#你要执行的命令
expect
"Password:"
#执行后终端回显的交互信息
send
"admin_123\r"
#当终端出现上面的交互详细后,模拟键盘输入的内容
#此例,执行su
-
mao
切换mao用户,终端提示输入密码后,模拟键盘输入mao用户的密码

2. linux下切换用户命令

su是在用户间切换,可以是从普通用户切换到root用户,也可以是从root用户切换到普通用户。如果当前是root用户,那么切换成普通用户test用以下命令。

su-test如果要切换回root用户,那么用以下命令。

su或su-用户名root可以省略不写。

切换回root用户时要输入root密码。一般直接输入exit命令来切换回root用户,这样就不用输入密码。

3. linux 用户退出怎么命令

用户退出登录的方法有以下三种:

1、在shell提示符下输入 exit 按回车确认

2、在shell提示符下输入 logout 按回车确认

3、按快捷键crtl+d (此方法同logout效果)

(3)shell切换用户执行命令扩展阅读:

Linux常用命令之——退出、切换用户exit、su

exit命令同于退出shell,并返回给定值,在shell脚本中可以终止当前脚本执行,执行exit可使shell以指定的状态值退出。

若不设置状态值参数,则shell以预设值退出,状态值0代表执行成功,其他值代表执行失败。

su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。

选项:

-c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份;

-f或——fast:适用于csh与tsch,使shell不用去读取启动文件;

-l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;

-m,-p或--preserve-environment:变更身份时,不要变更环境变量;

-s<shell>或--shell=<shell>:指定要执行的shell;

--help:显示帮助;

--version;显示版本信息。

4. SHELL 脚本如何实现切换用户

目前用的最多的是用Except

步骤如下:

  1. 安装Except

  2. 代码:

#!/usr/bin/envexcept
settimeout30
setuser"USERA"
setmsg"messageinterminal"
setpasswd"yourpassword"
spawnsu$user
expect_before$msg{
send"$passwd "}
interact

注意,msg变量里写你手动切换user时屏幕提示输入密码的信息, passwd就是你切换的那个用户的密码。

5. shell 如何在切换用户后执行后面的语句

这个得用 sudo 命令。他在切换用户后,执行完指定命令后自动切回原用户。
echo start
sudo -u user ./some.sh
#执行多个命令把命令写进脚本里。
echo end

注意采纳。

阅读全文

与shell切换用户执行命令相关的资料

热点内容
程序员可以转行做运维吗 浏览:323
如何检测到服务器端口是否通 浏览:851
linuxsed正则 浏览:109
linux安装gz文件 浏览:357
linux如何卸载编译的软件 浏览:929
高三解压活动视频 浏览:780
如何把服务器卡爆 浏览:949
饿了么java程序员 浏览:960
python编译时找不到路径 浏览:910
jpg转换pdf软件 浏览:103
php读取json文件 浏览:866
螺杆压缩机的功率计算 浏览:74
谷轮压缩机c 浏览:338
苹果app如何复制到另一个手机 浏览:834
javasession超时 浏览:831
易金通app怎么更改手机号 浏览:493
plc数控编程的方法 浏览:989
android只能输入数字和字母 浏览:120
文件夹如何删除页码 浏览:993
服务器被封了有什么后果 浏览:980