![명령줄에서 2019-08-15 날짜 형식을 2019년 8월 15일로 변환하는 방법은 무엇입니까?](https://linux55.com/image/159004/%EB%AA%85%EB%A0%B9%EC%A4%84%EC%97%90%EC%84%9C%202019-08-15%20%EB%82%A0%EC%A7%9C%20%ED%98%95%EC%8B%9D%EC%9D%84%202019%EB%85%84%208%EC%9B%94%2015%EC%9D%BC%EB%A1%9C%20%EB%B3%80%ED%99%98%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
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_fmt
NetBSD 사용자는 위와 비슷한 것을 사용할 수 있지만 구현 에서는 다음을 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
).