2013-02-24 61 views
7

顯示時間,我想寫顯示上午或下午的時間,而不是它使用date命令顯示方式的shell腳本。我不知道我該如何去做這件事。我想對於初學者來說,我如何從日期命令中提取時間來操縱它?我如何提取小時數來操縱它?寫作殼腳本在上午或下午符號

回答

1

您可以使用日期命令的「+」格式設置選項。例如爲:

> date +%l%p 
-> 7PM 
2

而不是它是使用日期命令

date命令需要一個格式字符串顯示方式。供給%p將根據給定時間值,或爲當前區域設置相應字符串顯示任一「AM」或「PM」。中午被視爲 「PM」 和午夜 「AM」:

% date +'%H:%M %p' 
08:01 am 

「引擎蓋下」,這叫strftime()。有關更多格式選項,請參閱手冊頁。

7

什麼你要找的是

man strftime 

這代表字符串格式的時間,這是格式date用途。

因此,要獲得目前的AM/PM,使用以下命令:

date +"%p" 

ampm=`date +"%p"` 
echo $ampm 

的時間可以是幾種格式之一(你要12或24小時的時間, ?前導零與否)我猜你要非前導零12小時時間:

date +"%l" 
2

您可以使用下面一個打印TI我在上午和下午格式上達到幾分鐘。

echo $(date +"%I:%M %p") 

輸出:下午9點20分

echo $(date +"%r") 

輸出:下午9時20分09秒

或 回聲$(日期+「% I%p「)

輸出:09 PM

1

這取決於區域設置。

LC_TIME="C" date +%l%p 
LC_TIME="C" date +'%l:%M %p'