13
A
回答
7
這裏是最好的答案,我發現當時的存在,但它僅用於修改時間:
expr `date +%s` - `stat -c %Y /home/user/my_file`
+0
使用%Z代替%Y您獲得最後更改日期(創建日期與我的計算機上一樣) –
18
我怕我上無法解答的創建時間的問題,但對於最後修改時間,你可以使用以下方法來獲得劃時代日期,在秒,因爲名是最後修訂:
date --utc --reference=filename +%s
,所以你可以再等等類似:
modsecs=$(date --utc --reference=filename +%s)
nowsecs=$(date +%s)
delta=$(($nowsecs-$modsecs))
echo "File $filename was modified $delta secs ago"
if [ $delta -lt 120 ]; then
# do something
fi
等。
更新 這樣做的更elgant方式(同樣,只修改的時間):how do I check in bash whether a file was created more than x time ago?
1
你可以用ls --full與時間
file1="file1"
file2="file2"
declare -a array
i=0
ls -go --full-time "$file1" "$file2" | { while read -r a b c d time f
do
time=${time%.*}
IFS=":"
set -- $time
hr=$1;min=$2;sec=$3
hr=$((hr * 3600))
min=$((min * 60))
totalsecs=$((hr+min+sec))
array[$i]=$totalsecs
i=$((i+1))
unset IFS
done
echo $((${array[0]}-${array[1]}))
}
2
如果你的系統有stat
:
modsecs=$(stat --format '%Y' filename)
而且你可以算一算,如Joel的回答。
相關問題
- 1. Bash文件測試條件
- 2. XPath測試日期
- 3. bash根據日期創建文件?
- 4. Bash - 文件名稱更改日期+ 1
- 5. Bash,測試兩個文件的存在
- 6. linux-bash腳本 - 測試文件
- 7. 基於日期測試條件邏輯
- 8. 用日期線更新日誌文件bash
- 9. Javascript日期測試工具
- 10. 測試在JS日期
- 11. 嘗試使用Bash腳本移動基於名稱和日期的文件夾
- 12. 測試在bash
- 13. 未來日期的Java測試用例
- 14. JUnit日期類測試用例
- 15. 使用NSDate/NSCalendar測試周年日期
- 16. 如何使用mysql測試日期和日期時間
- 17. 從使用to_date和測試LocalTimeDate的數據庫測試日期
- 18. Bash - 按日期/文件名刪除文件
- 19. bash腳本根據文件名中的日期刪除文件
- 20. 在bash中添加文件日期到文件名
- 21. bash:僅顯示文件名中包含日期的文件
- 22. Bash重命名文件從「test.file.1」到「測試文件1」
- 23. 從csv文件導入日期到mysql使用bash
- 24. bash日期無效日期(-d'feb 29 -3years')
- 25. Python:如何從測試文件中模擬源文件中的日期?
- 26. BASH測試錯誤[[]]
- 27. 測試日期是否與iCalendar週期性事件匹配
- 28. NUNIT測試c#中的日誌文件
- 29. 如何使用bash測試文件系統的目錄限制
- 30. 使用日期預測日期
有一個數字,你可以用它來做到這一點和bash可以調用所有這些命令。爲什麼厭惡使用外部命令? UNIX是建立在工具的哲學基礎之上的,它可以很好地完成一件事和一件事。 – paxdiablo
會持續修改時間嗎 - 或者您需要創建時間嗎? – Joel
我更喜歡創作時間 – JeffPHP