2009-12-04 2 views
8

Was bedeutet $$ in KornShell? Ich nehme an, es ist mit der Prozess-ID verbunden, aber ich möchte seine genaue Bedeutung wissen.

Antwort

2

Es wird verwendet, um temporäre Namen mit der Prozess-ID zu erstellen. Angenommen, Sie benötigen einen Dateinamen, aber dieser Name muss für den Prozess, in dem Sie sich befinden, eindeutig sein. Wenn also mehrere Personen dasselbe ksh-Skript ausführen, treten sie nicht aufeinander auf.

$$ ist in bash, sh und anderen UN * X Schalen.

+0

welche Prozess-ID, Ksh selbst, Eltern oder Kind? –

+0

Wenn Sie ein ksh-Skript ausführen, wird ksh forks und das Kind wird als eigener Prozess ausgeführt. Wenn Sie etwas mit "$ ./script" ausführen, wird es im aktuellen Prozess inline ausgeführt. –

+0

@Philip: nicht wahr? sicherlich meinst du "./script" dann wird es in der aktuellen Shell ausgeführt –