今日、単一のユーザーから変更 (変更) されたすべてのファイルをリストする必要があります。
私はこれを試しました:find -mtime -1
しかし、出力は間違っています。皆さん、今日単一のユーザーから chanfed されたすべてのファイルを一覧表示する方法はありますか?教えてください。
find . -mtime -1 -printf "%u %p\n" | sort
現在のディレクトリ内のすべてのファイル (および所有者の名前) を再帰的にリストします (所有者ごとにグループ化)。
ファイルの所有者でグループ化する場合は、-user $user
関連するすべてのユーザーを追加してループできます。ファイルを変更するユーザーごとにグループ化する場合、この情報はファイルシステムや他の場所に保存されないため、グループ化することはできません。
最善の解決策ではありませんが、このスクリプトを使用できます。
# Check for files modified within past 24 hrs.
modifiedfiles=`find . -mtime -0`
username=`pwd | cut -d'/' -f2` # pwd is your current directory /home/user/
for i in $modifiedfiles
do
check=`grep $i /home/user/.bash_history`
if [ "$check" != " " ]
then
echo "file $i modified by $username "
fi
done
ここで、パス /home/userのユーザーは特定のユーザーです。 .bash_historyファイルの内容がmodifiedfilesリストと比較されます。