Was bedeutet "$$" in der Shell?


Antworten:



1

Wie in der anderen (akzeptierten) Antwort angegeben, repräsentiert der Parameter $ die aktuelle Prozess-ID (PID) der aktuellen Shell.

Das Echo dieses Parameters sollte in den meisten Shells funktionieren (nicht nur in Bash):

Bash:

$ echo $0
bash
$ echo $$
6780

Bourne:

$ echo $0
sh
$ echo $$
6988

C-Shell:

% echo $shell
/bin/csh
% echo $$
7613

Es ist auch wichtig zu beachten, dass Befehle aus der Shell unter der übergeordneten Prozess-ID (PPID) der Shell ausgeführt werden .

$ echo $$
6780
$ ps -ef | grep 6780
aploetz   6780  6770  0 11:15 pts/2    00:00:00 bash
aploetz   8572  6780  0 11:34 pts/2    00:00:00 ps -ef
aploetz   8573  6780  0 11:34 pts/2    00:00:00 grep --color=auto 6780
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.