2016-12-14 2 views
0

Ich habe ein kleines Programm erstellt, wo ich jedes Mal in 10 Sekunden das Datum, die Zeit und die Geschwindigkeit des Ladens sehe. Bevor ich mein Programm erstellt habe, habe ich speedtest-cli installiert.Erstellen eines Graphen (Sternchen) mit Printf unter Linux

folgt nun einen Codeblock:

!/bin/bash 
while [ True ] 
do 

sleep 1 
date=$(date "+%D +%T) 
dlspeed=$(speedtest-cli --simple | egrep 'Download') 
echo $date > bandwidth 
echo $dlspeed >> bandwidth 
content=$(cat bandwidth | sed ':a;N;$!ba;s/;\n/;/g') 
echo $content >> output 
done 

Wenn wir laufen das Programm alles schön funktioniert. Die erste Ausgabe ist 14/12/2016 18:33:25 Download: 8,33 MBits. Alle 10 Sekunden zeigt es mir meine Download-Geschwindigkeit. Ich benutze hier eine Schleife.

Jetzt muss ich printf verwenden, um ein Diagramm basierend auf der Download-Geschwindigkeit zu machen.So muss die Ausgabe 14/12/2016 18:33:25 Download: 8.33 Mbits ******** werden.

Meine Frage. Wie man dieses Diagramm mit Sternchen macht und fügt sie hinzu.

+0

Was genau wollen Sie erreichen? Drucken $ x Sternchen? – choroba

+0

Ich habe meine Frage aktualisiert. Ich hoffe du kannst mich jetzt besser verstehen. – Venus200

+0

Nicht viel, da ich nicht den 'speedtest' verwende. – choroba

Antwort

0

Sie können eine for-Schleife in bash verwenden:

for i in {1..6} ; do 
    printf '*' 
done 

Für eine Variable, können Sie seq statt geschweiften Klammern verwenden:

n=6 
for i in $(seq $n) ; do 
    printf '*' 
done 
+0

Danke, seq hat mir sehr geholfen. – Venus200

Verwandte Themen