특정 사용자가 만든 모든 파일을 어떻게 찾아서 화면에 표시합니까?
현재 사용자에게 모든 파일을 보려는 사용자 이름을 묻는 스크립트를 시작했습니다. 오류 검사를 포함하고 싶다는 점을 고려하여 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
creator
일반 Linux 파일 시스템에서는 파일을 추적하지 않고 파일 소유자만 추적하므로 이 작업을 수행할 수 없습니다 . 작성자와 소유자는 일반적으로 동일하지만 반드시 동일하지는 않습니다.
파일의 소유자를 찾으려면 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