[adding ilugc to CC list, i think it would be useful and the negative
feedback will improve this thread in case I dont notice one of your
mistakes OR someone notices a mistake in my msg]
Anandh G wrote on Thu, Jan 08, 2004 at 04:30:34AM -0800:
,----
| One query, even if i give #. ./_ , my system got hung. But i can't do
| ps -A because the hanging is quick. What exactly does the command
| ". ./_" is used for.
|
| I use to give #./any_bin_file to execute it. This is the only thing I
| know. what does ./_ do? And what is the use of #. command.
`----
like how you refer to the file 'any_bin_file' as ./any_bin_file, we
refer to the file named '_' as ./_ (the file '_' in current directory)
. makes the curent shell read the specified file and interpret it (so
it expects valid shell commands, obviously). so lets say you changed
your .bashrc and you wanted your current shell to use the variables /
shell code in it, you can do:
. .bashrc
coming back to the topic, for ease of understanding lets rephrase:
echo '. ./bomb & . ./bomb' > ./bomb; . ./bomb
What does ./bomb contain? It contains what the echo wrote into it:
. ./bomb & . ./bomb
You just have to note that each . ./bomb results in ". ./bomb &
. ./bomb" (two ". ./bomb" parallely). A chain reaction sets up hence.
Also note that you need not have to run this fork bomb as root. Even a
user who has a pretty large / no limit for nproc can bomb your
machine. Try it if you want ;)
HTH,
-Suraj
--
+--------------------------------------------------<suraj@xxxxxxxxxxx>--+
|Wisdom and self controlled ways of life, |
|earn name and lasting fame |
|(humility & self-control - 3), Thirukkural |
+--<http://www.symonds.net/~suraj/>-------------------------------------+