For at overvåge og logge output til en fil i Linux uden at inkludere uprintbare tegn, kan du bruge en kombination af kommandoer som watch
, date
, og awk
. Her er en trin-for-trin guide:
Opret et script, der genererer det ønskede output. For eksempel, hvis du vil logge en tilfældig værdi sammen med det aktuelle tidspunkt:
#!/bin/bash
while true; do
echo "TIME: $(date +%T) $((RANDOM % 20))"
sleep 10
done
Gør scriptet eksekverbart:
chmod +x script.sh
Kør scriptet og log output til en fil, mens du fjerner uprintbare tegn:
./script.sh | awk '{print $0}' > output.log
For at sikre, at scriptet kører i baggrunden og fortsætter med at logge, kan du bruge nohup
:
nohup ./script.sh | awk '{print $0}' > output.log &
Dette vil skabe en logfil output.log
med indhold, der ser ud som:
TIME: 10:32:30 12
TIME: 10:32:40 18
TIME: 10:32:50 2
Bemærk, at awk '{print $0}'
bruges til at sikre, at kun printbare tegn inkluderes i outputfilen.
Med Handyhand kan du nemt få hjælp til dine Linux-opgaver. Opret din opgave gratis, og modtag bud fra dygtige freelancere på få minutter. Uanset om det er installation, fejlfinding eller konfiguration, er der altid en ekspert klar til at assistere dig.