bash script2023. 6. 28. 15:54

 

반달가면 이글루에서 백업 - http://bahndal.egloos.com/570933

 

기준시각(epoch, 1970.1.1 00:00:00 UTC)으로부터 몇초가 경과했는지로 표시되는 타임스탬프(timestamp)를 다루어야 할 때가 있는데, date 명령을 이용하면 간편하게 일반적인 표시 형식으로 변환할 수 있다. 아래의 예시를 보자.

# 타임스탬프 1451885975초를 연월일시분초로 변환
date -d @141913415 "+%Y.%m.%d %H:%M:%S"
2016.01.04 22:16:55

현재 시점이 아니라 특정 시점을 지정하기 위해 -d 옵션을 이용하는데, 타임스탬프 값 앞에 '@' 기호를 추가해야 된다는 점에 유의하자.

반대의 경우도 가능하나, 형식에 있어서는 다소 제한이 따른다. 예를 들어 2016.01.04는 인식되지 않으나 20160104는 된다.

# 연월일시분초를 타임스탬프로 변환
date -d "20160104 14:39:35" "+%s"
1451885975

date -d "Jan 4 2016 14:39:35" "+$s"
1451885975

 

 

728x90
Posted by 반달가면