형식이 지정된 날짜 문자열의 형식을 얻는 방법은 무엇입니까?

형식이 지정된 날짜 문자열의 형식을 얻는 방법은 무엇입니까?

날짜를 처리하는 쉘 스크립트를 작성했습니다. 인수에서 하나 이상의 날짜 문자열을 가져와 결과를 인쇄합니다. 설명하다,

$ datecalc 06/27/2021 01/01/2000
05/10/2005

스크립트는 date(1) 명령을 사용하여 주어진 날짜를 에포크 시간으로 변환하는데, 이는 문제 없이 작동합니다. 문제는 결과를 정적 형식(현재 %D)으로 출력한다는 것입니다. 그래서 내 주요 질문은 다음과 같습니다.날짜 문자열의 형식을 얻는 방법이 있습니까?

예를 들어, 저는 스크립트/함수/파이프라인/이 기능을 수행하는 모든 것을 찾고 있습니다.

$ getformat "06/27/2021"
%m/%d/%Y
$ getformat "21/06/27"
%y/%m/%d
$ getformat "June 27"
%B %d

이렇게 하면 스크립트 출력으로 다음과 같은 작업을 수행할 수 있습니다.

date -d "$result" +$(getformat "$1")

나는 확인했다날짜 도구해당 프로그램이 해당 작업을 수행할 수 있는지 확인하십시오. 그러나 그렇지 않은 것 같습니다. 그러나 이를 달성하기 위해 하나 이상의 dateutils 프로그램을 사용하는 것은 괜찮습니다.

답변1

답변:아니요, 거기는 아니에요

@Kamil이 암시하는 것처럼 모호한 날짜가 주어지면 01/01/01이것이 dd/mm/yy, mm/dd/yy, yy/mm/dd 등인지 알 수 있는 방법이 없습니다.

관련 정보