Ich weiß, !!
dass Befehle erneut ausgeführt werden, aber was genau würde passieren, wenn ich einen Befehl erneut ausführe, der eine Variable im Befehl enthält?
Antwort1
Na, dann versuchen wir es doch mal:
$ foo=bar
$ echo $foo
bar
$ foo=qux
$ !-2
echo $foo
qux
$ history
...
219 foo=bar
220 echo $foo
221 foo=qux
222 echo $foo
223 history
Es scheint also, dass der Befehl zum Verlauf hinzugefügt wurdeVorEs erfolgt eine variable Erweiterung.
Antwort2
Es scheint, dass sich etwas Ausprobieren als nützlich erweisen und Ihnen sehr schnell ein Ergebnis liefern kann. Bevor Sie eine Frage stellen, ist es gut, diese Dinge selbst auszuprobieren. Auf diese Weise können Sie fundierte und detaillierte Fragen stellen :)
Da Sie auf diesem Gebiet offenbar noch recht neu sind, könnte Folgendes für Sie von Nutzen sein?
$ history -c
$ FOOD="Bananas"
$ echo $FOOD
Bananas
$ history
137 FOOD="Bananas"
138 echo $FOOD
139 history
$ !138
echo $FOOD
Bananas
Wie Sie sehen, hat der history
Befehl wie erwartet funktioniert. Durch die Ausführung von 138 haben wir genau denselben Befehl ausgeführt wie beim ersten Mal.
Profi-Tipp: Verwenden Sie den man
Befehl, um mehr über einen Befehl zu erfahren, der Sie interessiert. Beispiel:
man history
und geben Sie Qzum Beenden ein, wenn Sie fertig sind.
Prost!