Wie speichert man den Wert des cat-Befehls in der Variablen var?

7

Ich versuche herauszufinden, wie oft eine Zeichenfolge in einer Datei wiederholt wird, gleichzeitig muss ich sie in einer Variablen speichern.

Wenn ich den Befehl ( cat filename | grep -c '123456789' ) benutze, wird die Anzahl korrekt angezeigt, aber wenn ich den folgenden Befehl benutze, wird er als Befehl nicht gefunden angezeigt.

%Vor%

Kannst du mich wissen lassen, wo ich falsch liege?

    
Jackie James 05.06.2012, 04:59
quelle

3 Antworten

16

Verwenden Sie keine Leerzeichen um das Zeichen = :

%Vor%

Lesen Sie zumindest das Bash Prog Intro Howto

Aber du hast einen nutzlosen Gebrauch von cat , also Code einfach

%Vor%     
Basile Starynkevitch 05.06.2012 05:01
quelle
6

Denken Sie daran, dass grep die Datei direkt lesen kann. Sie können nutzlosen Katzeneinsatz vermeiden .

Im Beispiel Ihrer Frage tritt der Fehler Befehl nicht gefunden auf, weil das Leerzeichen vor dem Gleichheitszeichen steht. Versuchen Sie es stattdessen:

%Vor%

oder wenn Sie bash verwenden:

%Vor%

oder (zur Vollständigkeit) in csh / tcsh:

%Vor%     
ghoti 05.06.2012 05:35
quelle
0

Die Verwendung von Backquotes funktioniert auch:

%Vor%

Das heißt, die $ wird nicht benötigt. Sie können Variablen die Ausgabe verschiedener Befehle durch die Verwendung von backquotes zuweisen.

Zum Beispiel:

%Vor%     
Levon 05.06.2012 05:03
quelle

Tags und Links