명령줄에서 2019-08-15 날짜 형식을 2019년 8월 15일로 변환하는 방법은 무엇입니까?

명령줄에서 2019-08-15 날짜 형식을 2019년 8월 15일로 변환하는 방법은 무엇입니까?

bash값이 있는 변수가 주어지면 2019-08-15해당 날짜를 형식으로 변환할 수 있는 유틸리티가 있습니까 August 15, 2019?

답변1

Linux 또는 GNU를 사용하는 모든 시스템 date:

$ thedate=2019-08-15
$ date -d "$thedate" +'%B %e, %Y'
August 15, 2019

macOS, OpenBSD 및 FreeBSD에서는 date기본적으로 GNU를 사용할 수 없습니다.

$ thedate=2019-08-15
$ date -j -f '%Y-%m-%d' "$thedate" +'%B %e, %Y'
August 15, 2019

-j옵션은 시스템 시계 설정을 비활성화하고 -f입력 날짜 형식을 설명하는 형식 문자열을 사용합니다.strptime(3)형식 문자열은 변수 값에 사용되는 형식을 설명합니다. 그런 다음 변수의 값과 출력할 형식(다음과 같아야 함)strftime(3)형식 문자열).

-f input_fmtNetBSD 사용자는 위와 비슷한 것을 사용할 수 있지만 구현 에서는 다음을 date사용하므로 옵션이 없습니다.parsedate(3). 또한 -d입력 날짜 문자열을 지정하는 옵션에 유의하세요.

$ thedate=2019-08-15
$ date -j -d "$thedate" +'%B %e, %Y'
August 15, 2019

date또한 시스템의 설명서를 참조하십시오.

답변2

GNU에 접근할 수 있다고 가정하면 date,

$ date --date="2019-08-15" "+%B %d, %Y"
August 15, 2019

맨페이지를 확인하세요날짜( man date).

관련 정보