crontab에서 실행할 때 조건이 작동하지 않는 경우 [닫기]

crontab에서 실행할 때 조건이 작동하지 않는 경우 [닫기]

내 요구 사항은 "날짜"가 "file.txt"에 있는 날짜 목록과 일치하면 성공적으로 "날짜 일치"라고 표시되어야 한다는 것입니다.

#!/bin/bash

Date="Jun212018"

for i in `cat /home/file.txt`
do

if [ $i == $VT ]
then
echo "Date has Matched"
fi

done

답변1

스크립트가 VT정의되지 않았습니다(환경에 설정되어 있지만 사용되지 않는 경우 Date).

더 간단한 스크립트:

#!/bin/sh

if grep -q -Fx 'Jun212018' /home/file.txt; then
    echo 'Date has Matched'
fi

날짜가 Jun212018파일의 한 줄과 정확히 일치하면 문자열을 인쇄합니다.


아래 의견을 보면 이것이 당신이 원하는 것 같습니다.

#!/bin/sh

today=$( date +%b%d%Y )

if grep -q -Fx "$today" /home/file.txt; then
    echo 'date has matched' >/home/otherfile
fi

관련 정보