3

今日、単一のユーザーから変更 (変更) されたすべてのファイルをリストする必要があります。

私はこれを試しました:find -mtime -1しかし、出力は間違っています。皆さん、今日単一のユーザーから chanfed されたすべてのファイルを一覧表示する方法はありますか?教えてください。

4

3 に答える 3

3
find . -mtime -1 -printf "%u %p\n" | sort

現在のディレクトリ内のすべてのファイル (および所有者の名前) を再帰的にリストします (所有者ごとにグループ化)。

于 2013-09-14T12:58:21.883 に答える
2

ファイルの所有者でグループ化する場合は、-user $user関連するすべてのユーザーを追加してループできます。ファイルを変更するユーザーごとにグループ化する場合、この情報はファイルシステムや他の場所に保存されないため、グループ化することはできません。

于 2013-09-14T12:45:24.290 に答える
0

最善の解決策ではありませんが、このスクリプトを使用できます。

# 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リストと比較されます。

于 2013-09-14T12:54:58.627 に答える