Frage: Warum funktioniert wc Der Befehl gibt eine falsche Ausgabezeichenanzahl aus, wenn er mit echo verwendet wird Befehl unter Linux? Unten ist der Befehl, den ich verwendet habe, um die Anzahl der Zeichen in einer Zeichenfolge zu zählen.
$echo "santhosh" | wc -c 9
Aber es gibt mir immer eine Zählung mehr, wie aus der obigen Ausgabe ersichtlich! Mache ich etwas falsch? Bitte helfen Sie mir, dies zu lösen.
Lösung: Das Problem liegt nicht bei wc, aber mit der Verwendung von echo. Standardmäßig echo
Der Befehl fügt ein abschließendes Zeilenumbruchzeichen hinzu und wird an wc weitergeleitet Befehl, sehen Sie eine Zeichenanzahl mehr als die tatsächliche Zeichenfolgenlänge.
Um den abschließenden Zeilenumbruch zu unterdrücken, verwenden Sie -n Option für echo
Befehl wie unten gezeigt:
$echo -n "santhosh" | wc -c 8Notiz
Bash ist die Standard-Befehlsshell in fast jeder größeren Linux-Distribution. Dieser Befehl wurde also auf der Bash-Shell getestet.