strftime - 빈 필드 무시

strftime - 빈 필드 무시

입력 샘플:

one
two 1578678600

awk 명령:

$ echo -e "one\ntwo 1578678600"|awk '{print $1,strftime("%Y-%m-%d %H:%M:%S", $2)}'
one 1970-01-01 00:00:00
two 2020-01-10 17:50:00

strftime"1970-01-01 00:00:00"을 인쇄하지 않고 빈 필드를 무시하는 방법은 무엇입니까 ? 빈 필드는 처리 후에도 비어 있을 것으로 예상됩니다.

답변1

나는 그것에 대해 생각했다

$ echo -e "one\ntwo 1578678600"|awk '{if($2!="") {t=strftime("%Y-%m-%d %H:%M:%S", $2)} else {t=$2}};{print $1,t}'
one
two 2020-01-10 17:50:00

또는 더 나은 방법은 다음과 같습니다.

$ echo -e "one\ntwo 1578678600"|awk '{print $1,($2 != ""? strftime("%Y-%m-%d %H:%M:%S", $2) : $2)}'
one
two 2020-01-10 17:50:00

관련 정보