쉘 스크립트는 History 명령을 사용하여 스크립트의 마지막 실행 타임스탬프를 얻습니다.

쉘 스크립트는 History 명령을 사용하여 스크립트의 마지막 실행 타임스탬프를 얻습니다.

아래 방법을 사용하여 스크립트 실행의 마지막 타임스탬프를 얻으려고 합니다. 명령줄을 통해 제대로 작동하지만 스크립트를 통해 현재 시간을 제공합니다. 여기에 무슨 문제가 있는지 잘 모르겠습니다.

명령줄:

HISTTIMEFORMAT="%d/%m/%y %T" history | grep -v grep | grep "\/test\.sh -f \input.xml"| tail -n1

출력: 스크립트 실행의 정확한 시간

스크립트:

#!/bin/bash
HISTFILE=~/.bash_history
set -o history
HISTTIMEFORMAT="%d/%m/%y %T" history | grep -v grep | | grep "\/test\.sh -f \input.xml"| tail -n1

출력: 스크립트 실행 시간, 항상 현재 시간

답변1

타임스탬프가 지정된 기록을 보려면 기록 파일에 타임스탬프가 지정되어야 합니다. export HISTTIMEFORMAT="%d/%m/%y %T"구성 파일에 기록 타임스탬프를 추가(추가)하려면 ~/.bashrc또는 (시스템 전체) 중 ~/.bash_profile하나 를 수행하면 됩니다./etc/profile

이 설정을 적용하려면 다시 로그인해야 하며 새 기록 기록에 대한 올바른 타임스탬프만 볼 수 있습니다.

관련 정보