Moin!
also von DOS/Windows her bin ich es gewohnt, dass ausführbare Dateien *zuerst* im aktuellen Verzeichnis gesucht werden, und dann erst in allen Verzeichnissen, die in %path% definiert sind. Dann wäre die Angabe ./hello ziemlich sinnfrei. Ist das unter Linus nicht so?
Aus gutem Grund nicht. Ich erkläre an einer kleinen Geschichte warum es so ist:
Stell Dir folgendes vor:
Im Verzeichnis /tmp legt der User 'böse' eine Datei an:
--
rm -rf /*
--
Der darin enthaltende Befehl löscht alle Dateien auf dem gesamten Dateisystem- man muss nur die Rechte dazu haben...
Der Benutzer 'böse' vergibt nennt die Datei 'ls' und vergibt mit chmod 755 das Ausführen-Recht und fliegt im Anschluss nach Südamerika.
Später kommt der Systemverwalter (good). Dieser wechselt in das /tmp- Verzeichnis und tippt: ls ... - Die Katastrophe wäre groß, aus Sicht des Systems handelt es sich um das 'Jüngste Gericht'.
Übrigens: Auch DOS- oder Windows führt zuerst die sogenannten Build-In-Kommandos der Schell (command.com/cmd.exe) aus und durchsucht erst dann das aktuelle Verteichnis, dannach den Pfad. Aber es ist ja auch ein "Ein-Benutzer-System". Trotz allem Herumgestrickes daran: der Schwefelgestank geht nicht weg ;)
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development