[Ilugc] changing shell and finding it
benjaminrtz at gmail.com
Thu Jun 22 21:48:02 IST 2006
On 6/22/06, Gopalarathnam Venkatesan <gopal at gopalarathnam.com> wrote:
> R.Ramkumar wrote:
> >> echo $$
> > thats only the pid of the shell. as the faq mentioned by you says, u
> > have to grep thru ps for this pid.
> > that reminds me of the short cut for linux systems.
> > `cat /proc/$$/exe`... gives u the path to the executable.
> > read the file /proc/$$/cmdline till the first \0 for argv of the
> "$$" is pid of the parent process, if you say "echo $$" from the shell
> prompt after logging in, it is the process id of the parent shell.
$$ is the PID of the shell or script.
$PPID is parent process id. For login shell, PPID is pid of login
If "$$" is used within a shell procedure (script), it returns you the
> pid of the shell that was used to run the program.
When you run a script, login shell forks a new process and wait until it
finishes. $$ within the script would be the PID of the scipt or new process
forked for the script itself.
More information about the ilugc