Unix 또는 Linux에서 타임스탬프를 dd/mm/yyyy_hh:mm:ss:ms로 표시합니다.

Unix 또는 Linux에서 타임스탬프를 dd/mm/yyyy_hh:mm:ss:ms로 표시합니다.

Unix/Linux에서 필요한 형식으로 날짜와 시간을 표시해야 합니다. 내가 원하는 형식은 Unix 또는 Linux에서 dd/mm/yyyy hh:mm:ss:ms입니다. 다음 명령을 사용하여 가까워졌습니다.

echo $(date +%x_%r)

그러면 다음이 반환됩니다.

08/20/2012_02:26:14 PM

어떤 제안이 있으십니까?

답변1

나노초 정밀도가 아닌 밀리초 단위를 원할 경우 %3N다음을 대신 사용할 수 있습니다 %N.

$ date +'%d/%m/%Y %H:%M:%S:%3N'
12/04/2014 18:36:20:659

또는 원하는 용도 $(…):

$ echo "$(date +'%d/%m/%Y %H:%M:%S:%3N')"
12/04/2014 18:36:20:659

그러나 %N대상 시스템이나 bash 버전에 따라 이것이 불가능할 수도 있습니다. 임베디드 시스템 »GNU bash, 버전 4.2.37(2)-release (arm-buildroot-linux-gnueabi)«에서 테스트되었습니다. 아니요 %N(둘 다 아님 %3N):

date +"%F %T,%N"
2014-01-08 16:44:47,%N

답변2

date +%x_%H:%M:%S:%N

처음 두 숫자만 ms로 인쇄해야 하는 경우:

date +%x_%H:%M:%S:%N | sed 's/\(:[0-9][0-9]\)[0-9]*$/\1/'

var에 저장하십시오.

VAR=$(date +%x_%H:%M:%S:%N | sed 's/\(:[0-9][0-9]\)[0-9]*$/\1/')

답변3

답변4

이 같은:

date +'%d/%m/%Y_%H:%M:%S:%N'

%N지금은 밀리초를 찾을 수 없기 때문에 나노초(000000000..999999999) 동안

관련 정보