..irgendetwas mache ich falsch..
habe nachdem ich verschiedenes gelesen habe und auch ´mic´
mir tips gab versucht einen ganz einfachen shell-skript zu schreiben
aber es klappt nicht.
habe folgendes gemacht
(als normaluser nicht als root):
1) datei mit namen "best" erstellt
2) chmod 755 best
3) skript geschrieben :
#!/bin/bash
mkdir backup
echo "done"
4) wenn ich nun in die shell den befehl "best"
eingebe kommt :bash: best: command not found
Woran liegts? was ist der fehler?
habe [suse linux 9.1]
Linux 15.011 Themen, 106.842 Beiträge
die shell sucht bei eingabe des dateinamens standardmässig aus sicherheitsgründen nur in den in der variablen $PATH eingetragenen verzeichnissen. der inhalt der $PATH-variablen kann mit echo $PATH angezeigt werden.
wenn du das skript nicht in einem dieser verzeichnisse ablegst, so muss es, wie von rmf erwähnt, mit dem relativen oder absoluten pfad aufgerufen werden. der absolute pfad beginnt immer mit / und ist eine angabe, ab wo vom wurzelverzeichnis sich eine datei befindet. der relative pfad gibt an, wo sich eine datei relativ zum aktuellen verzeichnis (anzeigbar mit dem befehl pwd) befindet. befindet sich eine datei in einem übergeordneten verzeichnis, so kann man mit .. dorthin navigieren. liegt eine datei im aktuellen verzeichnis, so muss dies mit . (was für "aktuelles verzeichnis" steht) angegeben werden.
beispiele:
wir haben eine datei namens meinskript in /home/user/skripte/ abgelegt und ausführbar gemacht.
ansprechen über absoluten pfad (aktuelle position egal): /home/user/skripte/meinskript
relativer pfad, wenn wir in /home/user sind: skripte/meinskript
relativer pfad, wenn wir in /home/user/blabla sind: ../skripte/meinskript
relativer pfad, wenn wir in /home/user/skripte sind: ./meinskript
