bash - 当用户以 root 身份运行脚本时获取用户主目录

标签 bash shell

我有一个 sh 脚本需要以 root 身份运行,但它是由最终用户使用 sudo 运行的。当使用 sudo 运行时 ~/指向/root 时,如何获取用户主目录?

最佳答案

尽量避免评估。尤其是 root 烫发。

你可以这样做:

USER_HOME=$(getent passwd $SUDO_USER | cut -d: -f6)

更新:

here这就是为什么要避免评估。

关于bash - 当用户以 root 身份运行脚本时获取用户主目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7358611/

相关文章:

android - 如何登录android设备并执行命令

bash - 将文件名变量传递给 sed 命令

delphi - FireMonkey 中是否有用于显示文件系统/文件树的组件?

bash - 检查程序是否存在,如果不存在则安装它

mysql - 将每个 mysql 记录(多行)存储为 bash 中的变量

bash - 为 bash 函数参数分配新值

bash - 实时读取两个文件

linux - 如何从包含特定字符串模式的行中提取第一个参数

java - 当使用 JSch 通过 Java 执行时,某些 Unix 命令会失败并返回 "... not found"

python - 如何将带冒号的目录添加到 PYTHONPATH?