当前位置:首页 » 网页前端 » shell脚本切换账号
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

shell脚本切换账号

发布时间: 2022-05-03 05:14:48

❶ linux shell脚本切换用户执行一段命令

ls -l /bin/echo 看看echo命令的权限是什么 如果其他用户没有执行权限,就切到root下加一下x权限
chmod o+x /bin/echo

❷ 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就是你切换的那个用户的密码。

❸ 怎么在shell脚本中实现su切换用户

目前用的最多的是用Except

步骤如下:

  • 安装Except

  • 代码:

  • 123456789
  • #!/usr/bin/envexceptsettimeout30setuser"USERA"setmsg"messageinterminal"setpasswd"yourpassword"spawnsu$userexpect_before$msg{send"$passwd "}interact
  • 注意,msg变量里写你手动切换user时屏幕提示输入密码的信息, passwd就是你切换的那个用户的密码。

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

先确认一下su -c 能否解决问题,语法 su - <user name> -c <cmd> 以指定用户执行命令

[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用户的密码

❺ 在shell脚本内如何切换用户

使用命令即可
su - xxx -c "pwd"

❻ Shell脚本中切换用户执行命令

Shell脚本中切换用户执行命令起因:由于将新项目添加到内网、外网创建git版本库及gitosis管理比较繁琐,于是写个脚本来实现,需要git用户组的用户才能进行git相关操作。解决方法:Shell代码
su
-
www
-c
cd
gitosis-admin
&&
git
add
.
使用su
-u
yourusr
-c
命令,默认的目录是在/home/yourusr/
目录的,执行的命令需要切换目录要注意

❼ shell脚本,我从root用户切换到普通用户之后,新定义了一个变量,但打印变量的值是空的,怎么回事

在$前面加上转义, echo ${Result1} 替换成echo ${Result1}


这个问题跟root用户切换到普通用户什么的没关系,而是因为你在用here-document的时候,并没有用双引号或单引号将!引用起来,或用转义符将here-document中的元字符$转义,这时候here-document中的文本将被扩展,即参数替换被启用。

你运行一下这段脚本,看看Result1值的变化,就会明白了

#!/bin/bash
Result1="001"
echo "Parameter substitution is enabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
echo "Parameter substitution is disabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
bash<<'EOF'
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF

❽ linux中如何写shell脚本实现改变用户为root并且不需要手动输入密码

编辑/etc/sudoers,给用户设置免密码使用su命令的权限,执行
sudo su -
即可免密切换到root

❾ SHELL切换用户后怎么继续执行脚本,求大神

(1) 需要把${fileforwardpath}改成真正的full path。
(2) make sure这个path上每个dir的permission是755
(3) make sure 这两个sql file(0_CreateUser.sql & 1_DBSetup.sql)的permission是755