特定のユーザーが作成したファイルを検索する


15

特定のユーザーが作成したすべてのファイルを検出して画面に表示するにはどうすればよいですか?

現在のユーザーに、すべてのファイルを表示したいユーザー名の入力を求めるスクリプトを開始しました。エラーチェックを含めることを考慮してifステートメントを使用することを考えました。

echo -e "Option 11: Display all the Files a Particular User Has Created\n\n"
echo -e "Enter Username below\n"
read username

6
find-user特定のユーザーが所有するファイルを検索するオプションがあります。ただし、それを超えて誰がファイルを作成したかをどのように判断できるかはわかりません。所有権は変わる可能性があるので、それがあなたが本当に望んでいるものかどうかはわかりません。
ブルックリー

2
私がそれを行う唯一の方法は、ファイルシステム監査を実施することです。
BitsOfNix

回答:


21

通常のLinuxファイルシステムでcreatorは、ファイルの所有者のみを追跡するため、ファイルの追跡はできません。通常、作成者と所有者は同じですが、必ずしも同じではありません。

ファイルの所有者を検索する場合は、Bratchleyが示したように、次を使用できます。

find / -type f -user user_name

それらのファイルを見つけて名前を表示します。

ファイルを表示するには、その方法で見つかる可能性のあるファイルタイプのコンテンツを表示できるプログラムが必要です。show_file引数として単一のfile_nameをとるようなユーティリティがある場合は、次のことができます。

find / -type f -user user_name -exec show_file {} \;

0

使用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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.