wie internet bandbreite mit bash script herausfinden?
es gibt das tool speedtest-cli aber wie kann ich das ergebnis davon oder von einem anderen tool ins bash script bekommen?
2 Antworten
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer
Hallo
Vielleicht hilft dir folgender Ansatz weiter.
speedtest-cli aus den Paketquellen installieren:
sudo apt-get install speedtest-cli
ein Beispiel mit grep (egrep):
speedtest-cli | egrep "Hosted.*:|Download:|Upload:"
Die Ausgabe kannst du dann z.B. mit (e)grep oder awk weiter verarbeiten. Ein Beispiel Bash Script könnte wie folgt aussehen:
#!/bin/bash
SEEDTESTRESULTS=$(speedtest-cli | egrep "Hosted.*:|Download:|Upload:");
echo "${SEEDTESTRESULTS}";
# weiter verarbeiten
PINGTIME=$(echo "${SEEDTESTRESULTS}" | egrep "Hosted.*:");
DOWNSPEED=$(echo "${SEEDTESTRESULTS}" | grep "Download:");
UPSPEED=$(echo "${SEEDTESTRESULTS}" | grep "Upload:");
for X in "${PINGTIME}" "${DOWNSPEED}" "${UPSPEED}";
do sleep 1;
echo -e "\n${X}";
done;
exit
mfG computertom
Nutzer, der sehr aktiv auf gutefrage ist
beschäftige dich mal z.b. mit awk
https://www.linux-community.de/ausgaben/linuxuser/2005/10/awk-werkzeug-und-skriptsprache/
du musst nur die ausgabe speedtest-cli an awk übergeben und verarbeiten und entsprechend ein muster anwenden , das ergebnis kansnt ud dann weiter verarbeiten . das tolle bei linux ist das man alles pipen kann .