2017-05-01 4 views
0

Ich fand heute einen seltsamen Bug in einem meiner Skripte. Einige Hintergrund first.The Skript nacheinander eine Reihe von Befehlen ausgeführt wird und erstellt eine HTML-Vorlage, die nun nach, dass send.Right diese bestimmte Vorlage verschlüsselt wurde, und ich kann nicht verstehen, why.Here ist ein Beispiel:Scrambled Ausgabe von Skript (Bash)

//Wrong.Siehe, dass die zweite Zeile geschnitten ist.Die Zeichenfolge sollte "Betroffene CI-Seriennummer" sein. Auch sollte die E-Mail mit "Dear Team" beginnen und es ist nicht auf der Position sollte es sein.

Affected CI Name: <name> 

cted CI Serial Number: <SN> 

Dear Team, 

Nirgendwo im Skript, das ich etwas in der background.Everything laufen nacheinander ausgeführt werden soll:

echo "<b>" Affected CI Name: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $2}')"<br>" >> $FPATH/mail 
echo "<b>" Affected CI Serial Number: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $1}') "<br>" >> $FPATH/mail 

Ich denke, dass dieses Problem nicht reproducible.My Frage sein wird, ist nur, wie könnte eine solche Ding passiert? Bisher lief alles richtig. Habe ich etwas über die Ausgabeumleitung verpasst? Meinem Wissen nach sollte jeder Befehl auf den Rückkehrcode des vorherigen warten und dann den nächsten fortsetzen.

// Linux-Version

2.6.26-2-amd64 # 1 SMP Sun 4. März 21.48.06 UTC 2012 x86_64 GNU/Linux

Antwort

1
diese

versuchen, um zu sehen, ob es hilft:

execute_commands() 
{ 
echo "<b>" Affected CI Name: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $2}')"<br>" 
echo "<b>" Affected CI Serial Number: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $1}') "<br>" 
} 

execute_commands >> $FPATH/mail 

Ich habe Ihre Befehle kopiert/eingefügt, vorausgesetzt, sie funktionieren. Der Unterschied besteht darin, dass alles mit nur einer Umleitung gehandhabt wird, in der Hoffnung, dass dadurch Pufferprobleme vermieden werden, die das von Ihnen beobachtete Verhalten beeinflussen könnten.

+0

Danke Fred.Ich werde es ausprobieren, obwohl, wie ich schon sagte, das nicht jedes Mal vorkommt, also weiß ich nicht, ob ich es richtig testen kann. –

+0

Ausgabe, die manchmal verstümmelt ist, und manchmal nicht, scheint genau die Art von Problem, das möglicherweise helfen könnte, aber das ist natürlich ein Schuss im Dunkeln, so kann ich nicht positiv sagen, dass es Ihr Problem lösen wird. – Fred

+0

Ja, es hilft vielleicht gar nicht, aber trotzdem schätze ich Ihre Hilfe. –