두 파일 간의 날짜 값 비교

두 파일 간의 날짜 값 비교

날짜가 포함된 두 개의 파일이 있습니다.

파일 1

12/22/2017

파일 2

12/21/2017    
12/20/2017    
12/23/2017    

File1에는 레코드가 하나만 있습니다. File2에는 여러 레코드가 있습니다. file2의 날짜가 file1의 날짜보다 큰지 확인해야 합니다. 두 파일의 날짜 형식은 MM/DD/YYYY.

답변1

다음은 sort두 파일에 대한 작은 스크립트입니다. greps는 file1보다 나중 날짜를 나타내고, 줄이 wc -l2개 이상이면 uniqcounts() 입니다(file1에는 1줄만 있어야 합니다).

if [[ "$(sort -t/ -k3,3n -k1,1n -k2,2n file1 file2 | grep -A 1 -f file1 | uniq | wc -l)" -gt 1 ]]
    then
       echo "Date in file2 is greater than file1"
    else
       echo "Date in file2 is not greater than file1"
fi

답변2

암소 비슷한 일종의 영양awk해결책:

awk -F'/' '{ d=$3$1$2 }
           NR==FNR{ t=d; nextfile }
           d > t{ 
               print "file2 has date(s) greater than in file1";
               exit 
           }' file1 file2

산출:

file2 has date(s) greater than in file1

답변3

에포크(man stat 참조)로부터 시간을 초 단위로 구하고 차이를 인쇄합니다.

T1=$(stat --printf='%Y\n' file1.txt)
T2=$(stat --printf='%Y\n' file2.txt)

echo $(($T1 - $T2))

관련 정보