Zweck von $ im symbolischen Link?

Zweck von $ im symbolischen Link?

Ich folgeeine Prozedurdas zeigt an, dass ein symbolischer Link erstellt wird:

sudo ln -s $(DynamsoftBarcodeReader)/lib/libDynamsoftBarcodeReader.so /usr/lib/libDynamsoftBarcodeReader.so

Ich interpretiere dies so, dass ich Folgendes implementieren muss:

sudo ln -s /home/pi/Desktop/dbr/lib/libDynamsoftBarcodeReader.so /usr/lib/libDynamsoftBarcodeReader.so

Meine Frage/Anliegen ist das $ im Verfahren: Was ist sein Zweck? Versuche, Google zu finden, waren nicht erfolgreich

Bildbeschreibung hier eingeben

Antwort1

Vorausgesetzt, Sie sollen dies in einer Shell eingeben, ist dies einBefehlsersetzung. Die Shell führt den Befehl aus DynamsoftBarcodeReaderund ersetzt $(DynamsoftBarcodeReader)in dieser Befehlszeile durch die Ausgabe, die durch Ausführen von erhalten wurde DynamsoftBarcodeReader. Wenn der Befehl beispielsweise DynamsoftBarcodeReaderausgibt /home/pi/Desktop/dbr, ist das Ziel des symbolischen Links /home/pi/Desktop/dbr/lib/libDynamsoftBarcodeReader.so.

Hinweis für zukünftige Besucher: In einem Makefile $(…)hat die Syntax eine andere Bedeutung: Sie nimmt den Wert einer Variablen an. In diesem Tutorial werden Makefiles nirgends erwähnt, daher ist der Befehl vermutlich dazu gedacht, in einer Shell wie Bash in die Befehlszeile eingegeben zu werden, und dort handelt es sich um eine Befehlsersetzung.

Wenn es $sich tatsächlich um einen symbolischen Link handeln würde, hätte es keine besondere Bedeutung. Der symbolische Link würde lediglich auf ein Ziel verweisen, das zufällig das Zeichen enthält $. Dies ist hier jedoch nicht der Fall.

verwandte Informationen