Ich habe eine große TXT-Datei, die ich in der Pipeline bearbeiten möchte. Aber an derselben Stelle in der Pipeline möchte ich die Anzahl der Zeilen in der Variable $ nol setzen. Ich will nur sintax sehen, wie könnte ich Variable in der Pipeline wie gesetzt:Ist es möglich, Variable in der Pipeline zu setzen?
cat ${!#} | tr ' ' '\n'| grep . ; $nol=wc -l | sort | uniq -c ...
Das nach dem zweiten Rohr sehr falsch ist, aber wie kann ich es in der Bash?
Eine der Lösungen ist:
nol=$(cat ${!#} | tr ' ' '\n'| grep . | wc -l)
pipeline all from the start again
aber ich will nicht Skript die gleiche Sache zweimal tun, bec Ich habe mehr Rohre hier dann.
I awk oder sed verwenden musn't ...
Was genau möchten Sie tun? Für mich sieht es so aus als könnte 'awk' es in einem Schuss tun. – fedorqui
Ich darf nicht awk oder sed. –
Immer noch: vielleicht kann Bash allein damit umgehen. Versuchen Sie, das Gesamtbild zu geben, weil Ihre Fragen ziemlich lokalisiert sind und möglicherweise ein konzeptionelles Problem verbergen. Es sieht auch so aus, als ob die Ausgabe bis zu einer bestimmten Pipe in einer Variablen gespeichert werden kann. Zählen Sie dann Zeilen und Echo plus Pipe zu den restlichen Befehlen. – fedorqui