(2 Antworten)
Vor 3 Jahren geschlossen.
Ich möchte den Pfad zu einer Datei finden und diese Ausgabe in einer Variablen in einem Shell-Skript speichern. Insbesondere in der Bash-Shell, wenn ich schreibe
GCC_VERSION="find *-gcc"
 Dann
echo ${GCC_VERSION}
 Ausdrucke
find some-gcc
 
 Wie erhalte ich die Variable GCC_VERSION um nur die Ausgabe von find zu halten ?
 So speichere ich die Ausgabe von find *-gcc Befehl in die Variable GCC_VERSION damit
echo ${GCC_VERSION}
 druckt
some-gcc
 Akzeptierte Antwort:
 Zuerst Ihr find Befehl ist falsch. Wenn Sie nach allen Dateien suchen möchten, die auf -gcc enden im aktuellen Verzeichnis sollte es sein:
$ find . -type f -name "*-gcc"
 
 Um die Ausgabe von find zu speichern zu GCC_VERSION Verwenden Sie process substitution :
$ GCC_VERSION=$(find . -type f -name "*-gcc")
 
 Beachten Sie, dass Sie möglicherweise mehr als eine Datei haben, die auf -gcc endet schließen Sie also einen Variablennamen in doppelte Anführungszeichen ein:
$ echo "$GCC_VERSION"
./mipsel-linux-gnu-gcc
./aarch64-linux-gnu-gcc
./mips-linux-gnu-gcc
./arm-linux-gnueabihf-gcc