it-swarm.com.de

Ordnen Sie der Variablen grep count zu


So weisen Sie das Ergebnis von zu
grep -c "etwas Text"/tmp/somePath
in Variable, damit ich es wiedergeben kann.
Vielen Dank!

#!/bin/bash
some_var = grep -c "some text" /tmp/somePath
echo "var value is: ${some_var}"

Ich habe auch versucht: some_var = 'grep -c\"some text \"/tmp/somePath'

Aber ich bekomme immer: Befehl nicht gefunden

27
user648026

Um die Ausgabe eines Befehls zuzuweisen, verwenden Sie var=$(cmd) (as shellcheck teilt Ihnen automatisch mit, ob Sie Ihr Skript dort einfügen).

#!/bin/bash
some_var=$(grep -c "some text" /tmp/somePath)
echo "var value is: ${some_var}"
54
that other guy


Das Problem gefunden
Es ist die Aufgabe, dies wird funktionieren:

some_var=$(command)


Während dies nicht funktioniert:

some_var = $(command)


Danke für deine Hilfe! Ich werde die erste hilfreiche Antwort annehmen.

26
user648026
some_var=$(grep -c "some text" /tmp/somePath)

Von man bash:

   Command substitution allows the output of a command to replace the com‐
   mand name.  There are two forms:

          $(command)
   or
          `command`

   Bash performs the expansion by executing command and replacing the com‐
   mand substitution with the standard output of  the  command,  with  any
   trailing newlines deleted.
3
Lev Levitsky