shell腳本date
⑴ 如何在shell腳本程序中獲取日期值
date"+%Y%m%d"
這樣就能得到 YYYYMMDD 這種形式的日期值。
⑵ 在shell中怎麼使用date參數
date命令是很好的命令, 在很多時間都會用到的, 尤其是在Shell編程的時候
如果想學好linux系統的話, 就找我請教了!
⑶ shell中date函數,我知道顯示當前月是echo "`date \"+%Y-%m\"`",那麼要是我想顯示上個月呢
如果是在Linux上,hefan77的答案就可以了。
如果是在其它的Unix上(e.g. AIX,HPUX,SunOS etc)
date command 沒有 -d 的 option 可用時,可以用下面script:
#!/bin/ksh
let YEAR=$(date "+%Y")
let MONTH=$(date "+%m")
if [ $MONTH -eq 1 ]
then
let YEAR=YEAR-1
LASTYM=$(printf "%d-%.2d\n" $YEAR 12)
else
let MONTH=MONTH-1
LASTYM=$(printf "%d-%.2d\n" $YEAR $MONTH)
fi
echo $LASTYM
⑷ 在shell中怎麼獲取當前日期和時間
獲得當天的日期:[root@master~]#date+%Y-%m-%d
有時候需要使用今天之前或者往後的日期,這時可以使用date的 -d參數。
獲取明天的日期:date-dnext-day+%Y%m%d
獲取昨天的日期:date-dlast-day+%Y%m%d
獲取上個月的年和月:date-dlast-month+%Y%m
獲取下個月的年和月:date -d next-month +%Y%m
獲取明年的年份:date -d next-year +%Y
(4)shell腳本date擴展閱讀
時間域參數:
時間域參數用於格式化輸出日期,相關時間域參數如下:
% H 小時(00…23)
% I 小時(01…12)
% k 小時(0…23)
% l 小時(1…12)
% M 分(00…59)
% p 顯示出AM或PM
% r 時間(hh:mm:ss AM或PM),12小時
% s 從1970年1月1日00:00:00到目前經歷的秒數
% S 秒(00…59)
⑸ linux shell腳本 每秒執行一次date輸出到/home/date中,想要每分鍾清空一下date文件 在腳本中怎麼加命令
這個需要使用計劃任務 crontab
cd /root
echo "echo >/home/date">>test.sh
chmod +x test.sh
echo "*/1* * * * root sh /root/test.sh" >>/etc/crontab
/etc/init.d/crond restart
⑹ shell腳本兩個日期值比較
這種標准格式的時期應該是無法比較的,你應該給這個時間轉化為linux的絕對時間然後比較大小,給你share一個我之前寫的一個計算一個命令執行時間的的腳本,你一看就明白了。
#########################
BEGIN=`date +"%Y-%m-%d %H:%M:%S"`
bkup_system|tee -a bkup_time.log
END=`date +"%Y-%m-%d %H:%M:%S"`
print $BEGIN begin back up|tee -a bkup_time.log
print $END end buck up|tee -a bkup_time.log
#時間轉化
Sys_data_begin=`date -d "$BEGIN" +%s`
Sys_data_end=`date -d "$END" +%s`
#計算間隔,可以根據間隔的正負來比較你時間的大小
INTER=`expr $Sys_data_end - $Sys_data_begin`
echo Total time do back up is $INTER s|tee -a bkup_time.log
########################
⑺ 如何正確在Linux Shell腳本中定義一個時間變數
1、創建腳本 test.sh,並入截圖內容。
⑻ 關於SHELL腳本中日期大小的比較
#!/bin/sh
find /path/you/want/to/delete -type d -mtime +7 -exec rm -r {} \;
把上面的寫入到一個腳本里,如/usr/local/bin/del.sh
chmod +x /usr/local/bin/del.sh
把下面這行加入到cron job里:
0 1 * * * /usr/local/bin/del.sh
⑼ shell腳本計算時間
TIME_INPUT=`date -d "00:00" +%s`
通過時間戳來計算
nowtime=`date +%s`
shijiancha=`expr $nowtime - $TIME_INPUT`
if [ $shijiancha -gt 180 ];then
echo 3分鍾前
else
if [ $shijiancha -lt -180 ];then
echo 3分鍾後
fi
fi
⑽ 在xshell用date查詢日期為英文,用shell腳本date得到的結果為亂碼,這個怎麼解決
打env把結果貼出來,把你xshell會話的屬性中終端截出圖來,最後把腳本和腳本運行方式貼出來
基本上應該就是你xshell的編嗎,與你服務端的編碼是相同的,所以輸出正常。然而,你shell腳本的運行環境與你xshell的編碼不同,所以是亂碼