답변:
형식화 된 시간을로 표현하는 방법 printf입니다.
형식은 다음과 같습니다.
%(FORMAT)T
어디 FORMAT의해 정의된다 strftime(3).
따라서 신기원 시간 (1970-01-01 00:00:00 UTC 이후의 초 단위 시간)을 얻으려면 다음 strftime(3)형식이 필요 합니다 %s.
printf "%(%s)T\n"
참고 또한 필요 \n로 줄 바꿈을 추가하는 말 printf(달리 echo기본적으로 추가되지 않습니다).
예:
$ printf "%(%s)T\n"
1454300377
$ printf "%(%Y-%m-%d)T\n"
2016-02-01
$ printf "%(%Y-%m-%d %H:%M:%S)T\n"
2016-02-01 10:20:27
완벽을 기하기 위해 date비슷한 strftime(3)형식으로 명령을 사용 하여 시간을 얻을 수도 있습니다.
$ date '+%s'
1454300542
$ date '+%Y-%m-%d' ## Short form: date -I
2016-02-01
$ date '+%Y-%m-%d %H:%M:%S'
2016-02-01 10:22:47
참고 :이 동작은 bash및 ksh의 내장 기능 printf에만 적용 /usr/bin/printf되며 csh, 및 zsh내장 기능 에서는 작동하지 않습니다 .
printf(1)맨 페이지 에서 보지 못했습니다 .
printf는 여기에 내장되어 있습니다 (외부는 동일한 동작을 help printf
printf은 내장입니까?/usr/bin/printfUbuntu 14.04에서 오류가 발생했습니다printf: %(: invalid conversion specification. 당신이 사용하는 경우bash.man bash기본 제공 문서를 사용해보십시오 .