특정 형식으로 날짜 인쇄

특정 형식으로 날짜 인쇄

다음 날짜 형식을 사용하여 bash 스크립트에서 로그를 인쇄하려고 합니다.

 2018-03-22 09:54:05,$task   ( $task is a counter of command )

 echo " `date +% .... ,$task` INFO $1"   ( $1 is the $1 argument that we want to print )

 2018-03-22 09:54:05,001 INFO script begin to start server
 2018-03-22 09:54:05,001 INFO script begin to start agent

답변1

echo이 경우에는 다음이 필요하지 않습니다.

date +"%F %T,$task INFO $1"

$task또는 가 $1포함된 경우 형식 시퀀스로 해석되지 않도록 먼저 %로 바꿔야 합니다 . 이는 다음을 통해 수행할 수 있습니다.%%datebash

date +"%F %T,${task//%/%%} INFO ${1//%/%%}"

답변2

~에서man date:

%F     full date; same as %Y-%m-%d
%T     time; same as %H:%M:%S

관련 정보