如何在linux中打印另一个用户的当前工作目录?

问题描述 投票:0回答:1

我可以发出命令行来查看其他用户当前正在哪个目录中工作吗?这就像使用 >pwd 但对于其他用户来说。

linux unix command pwd
1个回答
3
投票

每个进程的

cwd
文件夹中都有一个
/proc
符号链接,但作为一个普通人,你没有任何权限读取任何其他人的 proc 文件夹 - 只有你自己的:

[marc@panic home]$ ls -l /proc/$$/cwd
lrwxrwxrwx. 1 marc marc 0 May  5 12:06 /proc/16257/cwd -> /home
                                                          ^^^^^---cwd
[marc@panic home]$
            ^^^^---cwd

要获取给定用户

$USER
所在的所有文件夹的列表,您可以查询所有进程(假设有足够的权限,例如作为root)并删除重复的文件夹(通常有许多重复的文件夹):

for I in `ps -u $USER -o pid --no-headers` ; do readlink -f /proc/$I/cwd ; done | sort | uniq
© www.soinside.com 2019 - 2024. All rights reserved.