GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Der „eval“-Befehl in Bash?

Was können Sie mit dem eval tun Befehl? Warum ist es nützlich? Ist es eine Art eingebaute Funktion in Bash? Es gibt keinen man Seite dazu..

Akzeptierte Antwort:

eval ist Teil von POSIX. Es ist eine Schnittstelle, die in eine Shell eingebaut werden kann.

Es ist im „POSIX Programmer’s Manual“ beschrieben:http://www.unix.com/man-page/posix/1posix/eval/

eval - construct command by concatenating arguments

Es nimmt ein Argument und konstruiert daraus einen Befehl, der von der Shell ausgeführt wird. Dies ist das Beispiel der Manpage:

1) foo=10 x=foo
2) y='$'$x
3) echo $y
4) $foo
5) eval y='$'$x
6) echo $y
7) 10
  1. In der ersten Zeile definieren Sie $foo mit dem Wert '10' und $x mit dem Wert 'foo' .
  2. Definiere jetzt $y , die aus der Zeichenfolge '$foo' besteht . Das Dollarzeichen muss
    mit '$' maskiert werden .
  3. Um das Ergebnis zu überprüfen, echo $y .
  4. Das Ergebnis ist der String '$foo'
  5. Nun wiederholen wir die Zuweisung mit eval . Zuerst wird $x ausgewertet in die Zeichenfolge 'foo' . Jetzt haben wir die Anweisung y=$foo was zu y=10 ausgewertet wird .
  6. Das Ergebnis von echo $y ist jetzt der Wert '10' .

Dies ist eine gemeinsame Funktion in vielen Sprachen, z. Perl und JavaScript.
Weitere Beispiele finden Sie unter perldoc eval:http://perldoc.perl.org/functions/eval.html


Linux
  1. Der Unterschied zwischen den Bash-Operatoren [[ Vs [ Vs ( Vs ((?

  2. Das Ausrufezeichen (!) In Bash verstehen?

  3. Bash-Exportbefehl

  4. eval-Befehl in Bash und seine typischen Verwendungen

  5. Was ist der Unterschied zwischen &> und >&in bash?

So verwenden Sie den Bash-Lesebefehl

Bash-Wartebefehl

Bash-printf-Befehl

Die Liste nützlicher Bash-Tastaturkürzel

Bash fc-Befehl:Verwenden Sie die Bash-Shell ganz einfach wie ein Profi

Der Linux-Move-Befehl:Erklärt &leicht gemacht!