"performance-team(A/B/C-(어제 날짜)" 패턴을 갖는 이름으로 1일 전에 생성된 파일을 찾습니다.

"performance-team(A/B/C-(어제 날짜)" 패턴을 갖는 이름으로 1일 전에 생성된 파일을 찾습니다.

1일 전에 생성되고 "성능 팀(A/B/C) - (어제 날짜)" 패턴이 있는 이름을 가진 파일을 주기적으로 찾는 방법을 찾으려고 합니다. 그런 다음 화요일부터 일요일 오전 2시에 특정 메일 주소로 이메일을 보내시겠습니까?

내 현재 스크립트 "testScript1.sh"는 다음과 같습니다.

arr=()
#do not know how to include a day before date and team names : A,B or C
arr=($(find /root/Desktop/fileName -maxdepth 1 -name "performance-team*.txt" -mtime 0))

for i in "${arr[@]}"
 do
    echo -e "to:[email protected]\nSubject:performance latest\n"|(cat - && uuencode $i)|/usr/sbin/ssmtp [email protected]

crontab에서 내 명령은 다음과 같습니다

0 2 * * 2-7 /bin/sh /root/Desktop/fileName/testScript1.sh

위의 testScript1.sh 스크립트는 정확한 정보를 제공하지 않습니다. 또한 crontab에서 정기적으로 실행할 수 없습니다. 도와주세요.

답변1

-d다음과 같은 날짜 옵션을 사용하세요 .

date -d yesterday

예를 들어

> date
Mon Oct 17 07:36:10 CEST 2016
> date -d yesterday
Sun Oct 16 07:36:17 CEST 2016

+% 형식을 사용할 수도 있습니다.

date -d yesterday +%A-%d-%B

10월 16일 일요일

바라보다man date

관련 정보