在 sudo su - appuser 之后运行命令的 shell 脚本

在 sudo su - appuser 之后运行命令的 shell 脚本

我的组织不允许我访问根目录,并且有一些非常奇怪的身份验证,解释如下:

  • 我通过 ssh 终端使用用户名和密码组合登录 RHEL 服务器

  • 我不允许使用我的帐户,必须使用以下命令切换到服务器帐户:sudo su - appuser

  • 不允许对上述命令进行任何排列。意思sudo su -p appuser是不被允许sudo su appuser就是不被允许。一定是sudo su - appuser。在切换到 appuser 之前我需要输入密码

  • 现在我处于没有 sudo 权限的 appuser 中。我现在正在做我的工作。

最近我开始使用 git,在 git 中你可以指定用户名和密码。好吧,如果我的 6 人团队使用它,他们都会有相同的用户名。除非他们在切换到 appuser 后运行以下命令行来获取真实用户名:git config --global user.name $(logname)

因此,我试图通过制作一个脚本来导航这个我无法控制的糟糕的基础设施,该脚本允许我在切换到 appuser 后立即切换用户并设置我的 git 用户。

我目前拥有的是这个(这不起作用,因为第 1 行要求我输入密码):

sudo su - appuser
git config --global user.email $(logname)

除了向 IT 部门寻求我知道他们不会提供的解决方案之外,我还有什么选择?

答案1

您可以根据您的日志名设置环境变量:

case $logname in
shnisaka)
  export GIT_AUTHOR_NAME="your name"
  export GIT_COMMITTER_NAME="your name"
  export GIT_AUTHOR_EMAIL="[email protected]"
  export GIT_COMMITTER_EMAIL="[email protected]"
  ;;
olqs)
  export GIT_AUTHOR_NAME="my name"
  export GIT_COMMITTER_NAME="my name"
  export GIT_AUTHOR_EMAIL="[email protected]"
  export GIT_COMMITTER_EMAIL="[email protected]"
  ;;
esac

我们的个人资料设置中有类似的配置。尝试将其放在appuser的.bashrc中

相关内容