머신 데이터가 15초마다 표시되지 않습니다.

머신 데이터가 15초마다 표시되지 않습니다.

다음 스크립트는 15초마다 "vmstat"를 출력하도록 설계되었지만 어떤 이유로 활동이 있거나 스크립트를 종료할 때만 이 작업을 수행하고 그렇지 않으면 그냥 그대로 유지됩니다.

#!/bin/bash
#!/bin/sh


ps -ef | grep -v grep | grep "vmstat 15" | awk '{ print $2 }' | xargs kill

ps -ef | grep -v grep | grep "iostat 15" | awk '{ print $2 }' | xargs kill

ps -ef | grep -v grep | grep "mpstat 15" | awk '{ print $2 }' | xargs kill

today=`date +%Y-%m-%d.%H:%M:%S`

find /var/log/ -name data_collection -type d -exec mv /var/log/data_collection /home/Beer/"data_collection_${today}" \;

mkdir -p /var/log/data_collection

vmstat 15 | /home/Beer/./addtimestamp.pl > /var/log/data_collection/vm_stat &
iostat 15 | /home/Beer/./addtimestamp.pl > /var/log/data_collection/ios_stat &
mpstat 15 | /home/Beer/./addtimestamp.pl > /var/log/data_collection/mp_stat &

끝에 있는 "&" 기호가 뭔가 관련이 있는 것 같아요. 각 명령을 즉시 실행할 수 있도록 그렇게 하는 것뿐입니다.

답변1

중간 Perl 스크립트는 다음과 같을 수 있습니다.버퍼링을 겪다. 없이 시도해 보세요 | /home/Beer/./addtimestamp.pl. 문제가 해결되면 다음을 추가해 보세요.

$| = 1;

펄 스크립트에.

관련 정보