For at overvåge en logfil med tail -f
og afslutte overvågningen, når en bestemt streng findes, kan du bruge en kombination af tail -f
, grep
og pkill
eller lignende kommandoer. Her er en trin-for-trin guide til, hvordan du kan gøre dette:
Start med at bruge tail -f
til at overvåge logfilen:
tail -f /path/to/logfile.log
Brug grep
til at søge efter den specifikke streng i outputtet fra tail -f
:
tail -f /path/to/logfile.log | grep --line-buffered "specific_string"
For at afslutte overvågningen, når strengen findes, kan du bruge et script, der overvåger outputtet fra grep
og afslutter tail -f
processen. Her er et eksempel på et bash-script:
#!/bin/bash
tail -f /path/to/logfile.log | grep --line-buffered "specific_string" &
TAIL_PID=$!
while kill -0 $TAIL_PID 2>/dev/null; do
if grep -q "specific_string" /path/to/logfile.log; then
kill $TAIL_PID
break
fi
sleep 1
done
echo "String found, script continues..."
Dette script gør følgende:
tail -f
og grep
i baggrunden.tail -f
processen.while
løkke til at tjekke, om tail -f
processen stadig kører.tail -f
processen, og scriptet fortsætter.Dette er en enkel måde at overvåge en logfil og afslutte overvågningen, når en bestemt streng findes, så scriptet kan fortsætte med at udføre andre opgaver.
Spar dig selv for besvær og kom igennem din to-do liste i dag
1
Beskriv din opgave
2
Modtag bud
3
Få løst din opgave
Møbelsamling
Hjælp med at samle Ikea klædeskab
Maler
Klargøring af lejlighed til flyttesyn
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Havearbejde
Beskæring af 4 større træer
IT support
Geninstallering af windows + programmer
Elektriker
Installation af Sonos musikanlæg i hus
Rengøring
Ugentlig rengøring af lejlighed (114kvm)
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Elektriker
Opsætning af lamper i stue og soveværelse
Catering
3-retters menu til 14 mennesker