On Wednesday 30 March 2005 10:06, Amir Binyamini wrote:
> I had seen before a recommendion not to use "test" as an executable
> in linux and I am aware of it)
Let's improve this recommendation a bit:
1. If you follow the recommendation *not* to put '.' (the
current directory) in your $PATH.
2. Then you cannot simply run hello (Command not found) and
you must run it with a specific path (absolute or relative).
for example: ./hello
3. In this case you may call your programs by any name you like:
./hello; ./test; ./cd
The shell simply execute them as instructed (no alias substitution,
no built in command collision, etc).
If, OTOH, you have '.' in your $PATH:
1. You get accustomed to running your test programs without explicit
path name.
2. This causes your shell to apply its standard logic (aliases,
built-ins etc.)
3. Which causes collision with many commands with common names
(e.g: test, sort, tar (short for "targil" in hebrew) etc.)
4. As a bonus, if you do it as root, you just opened your system
to a "full-trailer-size" security hole as old as Unix.
To summarize: the folk tale about avoiding commands named test (or
Nee, for that matter) is like trying to cure a virus with Aspirin.
Cheers,
--
Oron Peled Voice/Fax: +972-4-8228492
[EMAIL PROTECTED] http://www.actcom.co.il/~oron
ICQ UIN: 16527398
"Software is like Entropy: it's hard to grasp, weighs nothing and
obeys the Second Law of Thermodynamics, i.e. it always increases"
-- Norman Augustine
=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]