스크립트에서 현재 월 이름(예: jan 또는 feb)을 가져오는 구문은 무엇입니까 bash
?
답변1
이 명령을 사용할 수 있습니다 date(1)
.
예를 들어:
date +%b
답변2
strftime(3)
설명서( ) 가 시스템에 설치되어 있는 경우 설명서에는 man 3 strftime
이 유틸리티 date
와 %(...)T
함께 사용할 수 있는 모든 형식 문자열이 나열되어 있습니다 printf
. 명령 매뉴얼에는 date
지원되는 형식 문자열이 포함될 수도 있습니다.
%b
("로캘의 약식 월 이름") 또는 ("로캘의 전체 월 이름") 중 하나를 사용하려면 %B
다음 +
옵션을 사용할 수 있습니다 date
.
$ date +%B
December
$ date +%b
Dec
$ date +'%B is abbreviated as "%b"'
December is abbreviated as "Dec"
또는 printf
( ksh93
또는 bash
4.3+)을 사용하십시오.
$ printf '%(%B)T\n'
December
$ printf '%(%b)T\n'
Dec
$ printf '%(%B is abbreviated as "%b")T\n'
December is abbreviated as "Dec"
소문자 약어로 된 월을 얻으려면 bash
(로케일이 항상 소문자 월 이름을 제공하지 않는 경우):
$ month=$( date +%b )
$ printf 'It is %s\n' "${month,,}"
It is dec
${parameter,,pattern}
매개변수 확장은 일치하는 경우를 수정합니다 . 에서는 패턴이 모든 곳에서 일치하므로 의 전체 문자열은 소문자입니다.$parameter
pattern
${m,,}
$m
또는 에서와 같이 ksh
변수를 소문자로 미리 선언합니다.
typeset -l month
bash
s 를 사용하면 printf
생성된 문자열을 다음을 사용하여 스칼라 변수 1에 자동으로 삽입할 수 있습니다 -v
.
$ printf -v month '%(%b)T'
$ printf 'It is %s\n' "${month,,}"
It is dec
또는 요소열쇠 0
배열 또는 연관 배열 변수