2012-08-13 45 views

回答

0

你應該可以使用find文件搜索工具,更具體地來說,就是它的-mtime-newer選項。

1
dateToFind=2011-05-18 
find . -printf "%TY-%Tm-%Td %p\n" | egrep "^$dateToFind " | sed "s/^$dateToFind //g" 

使用帶-mtime選項的find可能會更快,但有一些困難。首先,我沒有看到絕對日期的選項,因此您必須計算開始和結束時間偏移量。其次,您的時間偏移將很快失效,因此您可能需要-daystart選項。即使那樣,如果你試圖在近午夜時分運行,也可能會出現問題。

此外,在該日期修改並稍後修改的文件將不會被列出。我不知道如何確定這些隨後修改的文件。

0
: ${2?usage: $0 [[CC]YY]MMDD pathname} 
touch -t${1}0000.00 /tmp/$$-zerosec 
touch -t${1}2359.59 /tmp/$$-lastsec 
find $2 -newer /tmp/$$-zerosec ! -newer /tmp/$$-lastsec 
rm /tmp/$$-????sec 

我們把這個腳本參數日期(如touch)和(對於整個目錄樹/)路徑名。請注意,這不會在一天的第一秒找到修改的文件,並且如果搜索到/tmp,還會找到文件/tmp/$$-lastsec

相關問題