"date" 명령으로 연도 출력만 변경

"date" 명령으로 연도 출력만 변경

date예를 들어, 디스플레이Fri Apr 17 20:16:01 IST 2015

이제 연도를 변경하여 이 예에 표시되도록 하려고 합니다 date.Fri Apr 17 20:16:01 IST 2016

dateLinux 명령 출력에 1년을 추가하는 방법은 무엇입니까?

답변1

표준 날짜 형식을 생성 하려면 date다음을 수행할 수 있습니다.

$ date -d "$( date -d "Fri Apr 17 20:16:01 IST 2015" "+2016-%m-%d %T" )"

그러나 다음과 같이 날짜 인스턴스를 사용하고 적절한 시간 형식 지정자를 사용할 수도 있습니다.

date -d "Fri Apr 17 20:16:01 IST 2015" "+%a %b %e %T %Z 2016"

또는 - 날짜 형식 끝에 연도가 있으므로 awk다음과 같이 를 사용하여 참조 날짜를 문자열 처리하면 됩니다.

date -d "Fri Apr 17 20:16:01 IST 2015" | awk '$NF=2016'

연도가 고정되어 있지 않지만 다음 연도여야 하는 경우:

date -d "Fri Apr 17 20:16:01 IST 2015" | awk '++$NF'

날짜가 이미 문자열에 있는 경우 다음 date_string과 같을 수 있습니다.

awk '$NF=2016' <<< "${date_string}"

답변2

GNU Date는 플래그를 통해 제공할 수 있는 여러 상대 날짜를 허용합니다 -d.

$ date -d '+1year'
Sun Apr 17 09:15:14 PDT 2016

바라보다날짜 문자열의 관련 항목더 알아보기.

관련 정보