㈠ 如何在shell腳本程序中獲取日期值
date"+%Y%m%d"
這樣就能得到 YYYYMMDD 這種形式的日期值。
㈡ SHELL腳本取系統當前年月日問題
想把月份和日子左邊的0去掉是吧, 用這個看看
echo`date+%Y-%m-%d`|awk-F"-"'{printf("dateis%d-%d-%d ",$1,$2,$3)}'
㈢ linux sh腳本取前一個月的日期
1、date +%w
%w day of week (0..6); 0 is Sunday
2、如果星期2-6,上一個工作日肯定就是
t1=`date -d yesterday`
或者
t2=`date -d -1day`
3、如果星期天,上一個工作日肯定就是
t3=`date -d -2day`
4、如果星期1,上一個工作日肯定就是
t4=`date -d -3day`
㈣ 在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)sh腳本怎麼獲取當前日期擴展閱讀
時間域參數:
時間域參數用於格式化輸出日期,相關時間域參數如下:
% 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語句獲取當前日期,輸出格式要求20111224.
獲得當天的日期:date +%Y%m%d,輸出: 20181130。
需要使用今天之前或者往後的日期,這時可以使用date的 -d參數:
1、獲取明天的日期:date -d next-day +%Y%m%d。
2、獲取昨天的日期:date -d last-day +%Y%m%d。
3、獲取上個月的年和月:date -d last-month +%Y%m。
4、獲取下個月的年和月:date -d next-month +%Y%m。
5、獲取明年的年份:date -d next-year +%Y。
(5)sh腳本怎麼獲取當前日期擴展閱讀
linux的系統時間在shell里是可以直接調用系統變數的如:
獲取今天時期:`date +%Y%m%d` 或 `date +%F` 或 $(date +%y%m%d)
命令輸出結果如下:
[root@centi-C sh]# date +%Y%m%d
20120727
[root@centi-C sh]# date +%F
2012-07-27
[root@centi-C sh]# date +%y%m%d
120727
㈥ 用shell命令取得文件生成時間
通過shell獲取當前8位日期,並賦給變數,並且使用變數作為文件名,建立文件夾
代碼如下:
ls_date=`date +%Y%m%d`
mkdir ${ls_date}
上面兩句代碼雖然簡單
但是在應用中比較實用
獲取日期注意事項:date +%Y%m%d 這個字元串是被英文狀態下的ESC下面那個鍵
獲取變數注意事項:必須有$與{變數名}組成
㈦ 編寫shell腳本顯示當前日期和時間,path環境變數的值,當前用戶名稱和當前所在的路徑
1、用date 和echo就可以了。
2、實例:
#!/bin/sh
echo The date is:
date +%F
echo The time is:
date +%T
echo The PATH is:
echo $PATH
echo who r U:
whoami;
#echo $USER
echo the pwd:
echo $PWD
㈧ 如何寫一個sh腳本,輸出一段當前系統日期到文檔aa.txt
#!bin/bash
time=`date "+%Y-%m-%d %H:%M:%S "`
echo "${time}" > aa.txt
㈨ 請教如何在shell腳本中得到系統當前時間
在shell腳本里常常需要獲取系統時間來處理某項操作,今天系統的學習了一下如何獲取系統時間。記錄如下:
linux的系統時間在shell里是可以直接調用系統變數的如:
獲取今天時期:`date +%Y%m%d` 或 `date +%F` 或 $(date +%y%m%d)
命令輸出結果如下:
[root@centi-C sh]# date +%Y%m%d
20120727
[root@centi-C sh]# date +%F
2012-07-27
[root@centi-C sh]# date +%y%m%d
120727
獲取昨天時期:`date -d yesterday +%Y%m%d` 也可以寫成`date -d -1day +%Y%m%d`
[root@centi-C sh]# date -d yesterday +%Y%m%d
20120726
[root@centi-C sh]# date -d yesterday +%F
2012-07-26
[root@centi-C sh]# date -d -1day +%y%m%d
120726
[root@centi-C sh]# date -d -1day +%Y%m%d
20120726
獲取前天日期:`date -d -2day +%Y%m%d`
依次類推比如獲取10天前的日期:`date -d -10day +%Y%m%d`
或n天前的 `date -d "n days ago" +%y%m%d`
明天:`date -d tomorrow +%y%m%d`
注意以上中間有空格
至於你需要什麼樣的日期時間格式,就需要應用相關的時間域參數來實現咯
相關時間域如下:
% 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)
% T 時間(24小時制)(hh:mm:ss)
% X 顯示時間的格式(%H:%M:%S)
% Z 時區 日期域
% a 星期幾的簡稱( Sun..Sat)
% A 星期幾的全稱( Sunday..Saturday)
% b 月的簡稱(Jan..Dec)
% B 月的全稱(January..December)
% c 日期和時間( Mon Nov 8 14:12:46 CST 1999)
% d 一個月的第幾天(01..31)
% D 日期(mm/dd/yy)
% h 和%b選項相同
% j 一年的第幾天(001..366)
% m 月(01..12)
% w 一個星期的第幾天(0代表星期天)
% W 一年的第幾個星期(00..53,星期一為第一天)
% x 顯示日期的格式(mm/dd/yy)
% y 年的最後兩個數字( 1999則是99)
% Y 年(例如:1970,1996等)
注意:只有超級用戶才有許可權使用date命令設置時間,一般用戶只能使用date命令顯示時間。
添加一個練習腳本,功能:
在每月第一天備份並壓縮/etc目錄的所有內容,存放在/root/bak目錄里,且文件名為如下形式yymmdd_etc,yy為年,mm為月,dd為日。Shell程序fileback存放在/usr/bin目錄下。
#/bin/bash
#filebak
#file executable: chmod 755 filebak
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
bakdir="/root/bak/"
filename="`date +%y%m%d`_etc.tar.gz"
if [ ! -x "$bakdir" ];then
mkdir $bakdir
fi
cd $bakdir
tar cvfz $filename /etc
或使用crontab -e 命令添加定時任務:
0 1 * * * /bin/sh /usr/bin/fileback
㈩ Shell腳本獲取系統時間 Linux程序
1,$HOME/getdate.sh,內容如下:
#!/bin/bash
DATE=/bin/date
$DATE +"%F %T" >>$HOME/date_log.log
2. $HOME/call_gd.sh,內容如下
#!/bin/bash
SH=/bin/sh
${SH} $HOME/getdate.sh