我想弄清楚在創建另一個文件之前和之後30分鐘(作爲示例)創建的所有文件創建的命令。到目前爲止,我設法找到比文件 更新的文件,但我無法弄清楚在給定時間之前和之後如何查找。查找在指定文件之前和之後30分鐘創建的文件 - UNIX
我使用了一個命令: 找到型的F -newer file.txt的-cmin -30
這工作得很好,但只做了什麼,我試圖做的一半。 此外,我需要修改它只搜索setuid文件,我認爲我可以通過在該命令中添加-perm -4000來執行此操作。
有什麼建議嗎?
我想弄清楚在創建另一個文件之前和之後30分鐘(作爲示例)創建的所有文件創建的命令。到目前爲止,我設法找到比文件 更新的文件,但我無法弄清楚在給定時間之前和之後如何查找。查找在指定文件之前和之後30分鐘創建的文件 - UNIX
我使用了一個命令: 找到型的F -newer file.txt的-cmin -30
這工作得很好,但只做了什麼,我試圖做的一半。 此外,我需要修改它只搜索setuid文件,我認爲我可以通過在該命令中添加-perm -4000來執行此操作。
有什麼建議嗎?
據我所知,沒有辦法找到文件創建時間。 您可以通過修改時間嘗試(這將讓所有的文件最後修改的第5和第8間)
find . -type f -newermt 2012-10-05 ! -newermt 2012-10-08
(或訪問時間newerat
取代newermt
)
newerXY
是標誌來比較當前文件的時間戳與參考(見男子發現更多信息)。
根據man find
(在我的Debian),有4個標誌位(除了t
直接作爲時間來解釋)
a The access time of the file reference
B The birth time of the file reference
c The inode status change time of reference
m The modification time of the file reference
您也可以嘗試用'B'
出生的時間,但它並沒有爲我工作,給人我錯誤。我不知道爲什麼它被包含在手冊頁
比較到另一個文件
find/-newer file
find/! -newer file
您可以創建臨時文件(一個修改時間目標文件前30分鐘,另外30分鐘後)
touch -d `stat -c %y test.txt` - 30 temp/before_temp
touch -d `stat -c %y test.txt` + 30 temp/after_temp
find/-newer temp/before_temp ! -newer temp/after_temp
touch -d
需要一個日期選項,因此,如果您添加正確減,這應該工作。
'cmin'確實*不*看創作時間。文件的創建時間不記錄在任何通用文件系統中。 –