Bash 脚本中的变量

Bash 脚本中的变量

我正在尝试创建一个脚本,显示系统上每个用户在其主目录中使用了多少内存。一切都很顺利,直到我开始使用命令du -sh来提取有关特定用户的信息。我尝试运行:

du -sh ~currentUser
enter code here

我了解该命令在命令行中的工作原理。如何在使用可变用户名时使其工作?下面reguser是我在系统上用来胡闹的虚拟帐户。

:/home/reguser/Documents# du -sh ~reguser

输出

71M /home/reguser

答案1

这是因为,按照Shell 扩展,波浪符号扩展发生变量扩展。

您可以使用以下方式,而不是假设“/home”

getent passwd $user | cut -d: -f6

相关内容