请教一个问题。在shell脚本中如何实现切换用户,然后执行当前脚本余下的所有内容。这里解释一下这个问题,就是执行一个查询的shell脚本,这个脚本是使用root执行的(因为是平台中操作),但是在具体执行脚本查询命令的时候不希望使用root(有些特别的权限及路径问题),希望使用指定的用户。就类似在脚本开头 su - username 然后脚本中的所有命令都是在这个 username 用户下执行的,类似这个概念,因为脚本很长,不太适用 -c -s <<EOF 这种常见的解决方法。请问各位有遇到这种问题吗,感谢。
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已结题
shell脚本切换用户执行脚本
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
一包辣条九毛九 2022-08-31 10:55关注你不可以执行的时候,这样去执行吗 su - username -s /bin/bash 脚本
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2022-01-12 19:46回答 1 已采纳 我简单测试了一下,将bmc_token=cat headers.txt | grep Token ,写成 bmc_token=`cat headers.txt | grep Token` 还有变
- 2022-03-17 09:44回答 2 已采纳 newgrp docker这里出问题了,相当于是以另外一个 shell(新进程,也可以说是子进程)登陆了,你输入exit脚本就会继续运行
- 2021-07-16 13:35回答 2 已采纳 main中用cout<<var;
- 2021-01-11 03:13### Shell脚本中实现切换用户并执行命令操作 在日常的服务器管理与自动化运维工作中,经常需要使用不同的用户权限来执行特定的任务或脚本。例如,有时候我们需要在非root用户下运行某些Python脚本来避免不必要的...
- 2021-03-22 16:28回答 1 已采纳 nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。 nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out
- 2023-04-12 20:01回答 2 已采纳 可以使用psql命令执行pgsql的存储过程。在shell脚本中,通过编写psql命令并加上必要的参数和选项,可以执行存储过程。具体命令格式如下: psql -U <username> -
- 2022-11-09 17:51回答 2 已采纳 2*3 > 1.text 这句就不对了,已经进入到Python的交互环境下,不能同时支持 Linux 的写入,你想让它怎么去理解你这个“>”, 换个说法,如果你的表达式写的是“2>3
- 2021-03-18 08:59蓝狍的博客 #! /bin/bashrurl=/data/crm/tomcat/webapps/ROOT/upload/su - gpguser -c "gpg --recipient XXX --output $rurl$1 --encrypt $rurl$2... thenecho "$1"fi因gpg加密工具是gpguser安装的,所有用java 调用shell脚本...
- 2023-01-29 17:01回答 2 已采纳 使用命令 "sudo -u 用户名 gsettings set com.deepin.dde.power line-power-lock-delay 0" 在脚本中以指定用户的身份执行该命令,以修改对
- 2018-08-09 07:06回答 3 已采纳 不要在shell脚本中对密码进行硬编码,而要使用SSH密钥,它更加简单和安全。 $ scp -i ~/.ssh/id_rsa devops@myserver.org:/path/to/bin/*
- 2022-12-26 17:22回答 5 已采纳 可以使用 heredoc 或者 nowdoc 来解决此问题。heredoc 是使用 << 定界符来创建文本,而 nowdoc 是使用 <<< 定界符来创建文本。 下面是使
- 2020-09-15 17:49Shell脚本实现自动输入密码登录服务器是自动化运维和部署中的常见需求,特别是在执行涉及权限验证的任务时,如scp文件传输或SSH远程连接。在这种情况下,使用expect工具可以帮助我们编写脚本,自动处理需要用户交互...
- 2021-01-20 16:221. ssh 远程到主机;...很多时候我们可能需要远程执行服务器上的脚本来修改账号密码,此时就没有办法进行交互了。 此时可以使用如下两种方式修改密码: 方式1: echo password | passwd testuser --stdin > /dev
- 2020-09-14 18:29这个脚本首先切换到 .NET Core 应用的目录,然后执行应用。确保在当前目录下运行应用,因为配置文件和依赖项可能与可执行文件位于同一目录。 5. **执行 Shell 脚本**: 现在,你可以通过运行 `./dbbackup.sh` 来...
- 2020-09-15 10:41总结,shell脚本连接并重启远程服务器的方法主要是利用`expect`进行SSH自动化登录,并通过发送命令执行远程服务器上的脚本,实现了远程服务器的无干预管理。这种方法在批量管理和自动化运维中非常实用,能够有效提高...
- 没有解决我的问题, 去提问