我正在研究一個 bash 腳本,該腳本檢查是否在過去 X 天內進行了備份。該腳本必須在 linux 和 macos 上運行。我的問題是,當它檢查它是否在 linux 或 macos 系統上運行時,我不明白linux 部分上的 'bckpT' 變數之前的'@'是什么意思。
case "$OS" in
DARWIN)
lastBackup=$($DATE -u -r $bckpT %F)
;;
LINUX)
lastBackup=$($DATE -d @$bckpT %F)
;;
WIN)
$ECHO "No script for WIN"
;;
*)
help
;;
esac
當沒有'@'時,輸出為:
/usr/bin/date: 無效日期 '1647907200'
uj5u.com熱心網友回復:
在date命令中,@符號告訴命令將以下內容視為seconds since epoch
在您的情況下,它將引數$bckpT值視為自紀元以來的秒數
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/451825.html
