Как и в предыдущем посте, который я сделал, я пытаюсь сделать следующее:
Myfile.txt содержит:
$TTL 600
@ IN SOA dns1.mysite.com. root.localhost. (
2020042101 ; serial
1h ; refresh
30m ; retry
1w ; expiry
30m) ; minimum
IN NS localhost.
dns1.mysite.com IN A 172.16.1.18
dns2.mysite.com IN A 172.16.2.18
; Redirect this site to localhost to block
; List last consolidated on 12/11/2018
; DNS Blocks
*.mad IN CNAME *.
beans.com A 127.0.0.1 ; this is a test case
*.000webhostapp.com A 127.0.0.1
*.00h5.com A 127.0.0.1
*.00webhostapp.com A 127.0.0.1
myscript. sh содержит:
date=$ (date '+%y%m%d'01)
ydate=$ (date -d yesterday '+%y%m%d'01)
awk "{sub(/$ydate/,$date)}1" myfile.txt > tempt.txt && mv temp.txt myfile.txt
В нынешнем виде это работает, ЕСЛИ дата в файле соответствует только вчерашней дате. Теперь я собираюсь сопоставить, если это дата вчерашнего дня или раньше, и если это так, заменить ее на $ date, а затем перезаписать файл.
Я знаю, что awk может сделать это с "n1 -le n2", но я не могу заставить его работать в соответствии с операциями, которые я использую.
Может кто-нибудь помочь мне заставить это работать?
Спасибо!