如何使用 sed 打印出唯一用户

如何使用 sed 打印出唯一用户

我希望仅使用 打印系统中的唯一用户sed,使用:

ls -la | sed '/^$USER$/p'

....它为我提供与当前用户匹配的所有文件,并打印出它们所在的行。这意味着它会打印出所有用户的所有行。

答案1

如果要列出当前目录中拥有文件的所有用户,可以使用以下命令:

ls -la | tr -s ' ' | cut -f3 -d ' ' | sort | uniq

它列出了所有具有 的文件ls -la,然后使用 将多个空格折叠成单个空格tr -s ' ',因此我们可以使用它cut -d ' ' -f3来获取输出的第三列。-d ' '给出分隔符和-f3第三个字段。

然后我们对用户列表(第三列)进行排序,sort并使用 删除所有相邻的重复条目uniq


如果您想获取当前系统上所有用户的列表,您应该看看尼卡金的回答。

相关内容