다음 형식의 시간을 원합니다
2020-10-12 10:41:42,526
그것을하는 방법. 시도해 보았으나 잘못된 것 같습니다.
date +"%Y-%m-%d %H:%M:%S,%N"
답변1
3자리가 아닌 9자리가 표시되는 것이 유일한 문제인 경우 %N
표시하려는 자릿수를 앞에 추가하여 문제를 해결할 수 있습니다.%3N
$ date +"%Y-%m-%d %H:%M:%S,%3N"
2020-10-12 09:52:19,931
답변2
이는 현재 시간의 1초 미만 부분(9자리에 0이 추가됨)을 제공하는 %N
GNU 확장입니다 . 밀리초를 얻으려면 다음을 수행하십시오.date
N
date '+%F %T,%3N'
작성 중인 zsh 스크립트인 경우 strftime
내장 스크립트를 사용하여 이식할 수 있습니다.
zmodload zsh/datetime
strftime '%F %T,%3.'
부족:
zmodload zsh/datetime
strftime '%F %T,%3.' $epochtime
또는 기수 문자를 사용자의 기수 문자로 둡니다(그렇지 않다고 가정 %
하지만 기수 문자가 있는 로케일을 모릅니다 %
).
zmodload zsh/datetime
zmodload zsh/langinfo
strftime "%F %T${langinfo[RADIXCHAR]}%3."
ksh93 스크립트인 경우 printf
내장 스크립트를 사용하여 해당 작업을 수행할 수 있습니다.
printf '%(%F %T,%3N)T\n'
부족:
printf '%(%F %T,%3N)T\n' now
또는 사용자의 기수 문자를 사용합니다(다시 가 아니라고 가정 %
).
radixchar=$((1e-1))
radixchar=${radixchar//[0123456789]}
printf "%(%F %T${radixchar}%3N)T\n"