我将如何发现特定用户创建的所有文件并将它们显示到屏幕上?
我启动了一个脚本,提示当前用户输入他们希望查看其所有文件的用户名。考虑到我想包含错误检查,我考虑过使用 if 语句。
echo -e "Option 11: Display all the Files a Particular User Has Created\n\n"
echo -e "Enter Username below\n"
read username
答案1
您无法在通常的 Linux 文件系统上执行此操作,因为它不跟踪creator
文件,仅跟踪文件的所有者。创建者和所有者通常但不一定相同。
如果您想找到文件的所有者,您可以按照 Braatchley 的指示,使用
find / -type f -user user_name
查找这些文件并显示名称。
要显示文件,您需要一些程序来显示您可能找到的任何文件类型的内容。如果您有这样一个show_file
以单个 file_name 作为参数的实用程序,您可以执行以下操作:
find / -type f -user user_name -exec show_file {} \;
答案2
使用find
:
find / -type f -user “<SHORTUSERNAME>" -print 2>/dev/null
所以,在你的脚本中:
echo “Enter Username:”;
while read -e;do find / -type f -user $REPLY -print 2>/dev/null;done