14/Jul/2015
로 어떻게 변환할 수 있나요 14-08-2015
?
invalid date format
요소 때문 이라고 하는데 Jul
넣어두면 07
잘 작동합니다.
나는 이것을 시도했습니다 :
echo "Please enter the date: "
read X (here X is 14/Jul/2015)
a= date --date=$X '+%d-%b-%y'
echo "$a"
답변1
$x
포함된 경우 14/Jul/2015
다음을 사용하세요.
date -d "${x//\//-}" '+%d-%m-%Y'
다음과 같이 인쇄됩니다.
14-07-2015
유틸리티 date
는 슬래시로 구분된 문자열을 인식하지 못하므로 해당 문자열을 제거하고 -
대시( )로 바꿔야 합니다.
답변2
문제는 가 아니라 Jul
에 있으므로 /
매개변수 대체 메커니즘을 사용하여 제거하세요.
echo "Please enter the date: "
read X
a=$(date --date="${X//\//-}" '+%d-%b-%y')
echo "$a"
변수 할당도 잘못되었으며(뒤에 공백을 사용할 수 없음 =
) 명령 대체를 대괄호로 묶어야 합니다 $()
.