Unterschied zwischen $(BEFEHL) und `BEFEHL`? [GELÖST]

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
chu-i
Beiträge: 157
Registriert: 10.11.2005 23:29:01
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Berlin

Unterschied zwischen $(BEFEHL) und `BEFEHL`? [GELÖST]

Beitrag von chu-i » 29.08.2006 11:19:33

Hi@all

könnt ihr mir bitte den Unterschied zwischen den $(BEFEHL) und `BEFEHL` erklären?

Der Befehl mit $(...) und diesem Ergebnis sowie ...

Code: Alles auswählen

test="$(echo "Hallo Welt" | sed 's/\(Welt\)/\\\\033\[40;33m\1\\\\033\[40;37m/g')" && printf "$test\n"

Hallo \033[40;33mWelt\033[40;37m
der Befehl mit `...` und anderem Ergebnis.

Code: Alles auswählen

test="`echo "Hallo Welt" | sed 's/\(Welt\)/\\\\033\[40;33m\1\\\\033\[40;37m/g'`" && printf "$test\n"

Hallo Welt
8O Warum denn das?
Zuletzt geändert von chu-i am 29.08.2006 11:54:21, insgesamt 1-mal geändert.
Thx & cya Chu-i

„Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren.“
Benjamin Franklin (1706-1790†)

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 29.08.2006 11:31:43

Der Unterschied war auch mir nicht bewusst. Hmmm... Man lernt nie aus ;)
man bash hat geschrieben:When the old-style backquote form of substitution is used, backslash retains it's literal meaning except when followed by $, `, or \. The first backquote not \preceded by a backslash terminates the command sub- stitution. When using the \$(command) form, all characters between the parentheses make up the command; no\ne are treated specially.

Benutzeravatar
chu-i
Beiträge: 157
Registriert: 10.11.2005 23:29:01
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Berlin

Beitrag von chu-i » 29.08.2006 11:51:09

Danke für die rasche Antwort.
Auf man bash bin ich jetzt garnicht gekommen, da die Syntome auch auf einer ksh auftreten. :oops:
Thx & cya Chu-i

„Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren.“
Benjamin Franklin (1706-1790†)

Antworten