Hallo.
Wie kann ich es möglich machen bestimmte eigene Shell Scripte ohne ./ auszuführen? Sondern z.B. einfach so:
1 | $ scriptname
|
Anmeldungsdatum: Beiträge: Zähle... |
Hallo. Wie kann ich es möglich machen bestimmte eigene Shell Scripte ohne ./ auszuführen? Sondern z.B. einfach so:
|
||
Supporter
Anmeldungsdatum: Beiträge: 53482 Wohnort: Berlin |
Siehe dazu Du könntest aber auch einfach mal genau erklären, worum es dir konkret geht. |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 98 |
Hi. Vielen Dank. Das beantwortet meine Frage ausreichend. Es geht mir konkret einfach darum eigene Shell Scripte ohne ./ auszuführen da es mich einfach nervt das jedes mal voranzustellen. Ausserdem empfinde ich ./ als unelegant und unesthätisch. Ich kann mir auch nie wirklich merken ob es ./ oder /. ist. |
||
Anmeldungsdatum: Beiträge: 851 |
Hi Du kannst dir auch im Home einen Ordner "bin" erstellen und dort deine Skripte speichern. Die werden dann bevorzugt ausgeführt, egal in welchem Ordner du dich befindest. TNT |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 98 |
Klasse, danke! |
||
Anmeldungsdatum: Beiträge: 851 |
Allerdings solltest du Skriptnamen vermeiden, die schon von Befehlen oder Programmen belegt sind, sonst könnten komische Sachen passieren 😉 |
||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Besser als merken ist es zu begreifen. Das sind nämlich zwei Zeichen, nicht eine Zwei-Zeichen-Magie. Der Punkt ist das aktuelle Verzeichnis. ./ Ist somit das aktuelle Verzeichnis, gefolgt vom Trenner der zwischen Verzeichnis und Untervezeichnis bzw. Verz. und Datei verwendet wird. /. dagegen wäre etwas, das mit dem Trenner beginnt. Das kann nur das Wurzelverzeichnis sein und damit ein absoluter Pfad. /. selbst wäre dann das Wurzelverzeichnis selbst, denn für jedes Verzeichnis gibt es die zwei Spezialfälle . und .. - . ist das Verzeichnis selbst, und .. das übergeordnete Verzeichnis - außer beim Wurzelvezeichnis, das kein übergeordnetes Verzeichnis hat. Da ist . das selbse wie . . Deine Programme werden aber einen Namen haben wie foo oder foo.sh, so dass Du vor der Frage stehst, ob es jetzt /.foo bzw. /.foo.sh ist oder ./foo bzw. ./foo.sh . Dateien, die mit einem Punkt beginnen, sind versteckt - das hat bei ausführbaren Programmen wenig Sinn. Und im Wurzelverzeichnis legt man auch keine Programme ab - man darf es auch gar nicht, also müsste es mit sudo-Rechten tun. Häufiger benutzte Programme würde ich aber auch im Pfad speichern. |
||
Anmeldungsdatum: Beiträge: 1055 |
Du kannst dir auch einen anwedungsstarter erstellen, den klickst du an und schwubbs ist das Programm da. |
||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Vielleicht noch mal die Frage lesen und verstehen. |
||
Anmeldungsdatum: Beiträge: 1055 |
ja mit nem Anwendungsstarter started das Ding halt per klick ☺ wollte er aber nicht wissen. Ansonsten kann er es auch in seinen Homeordner packen: http://mywiki.wooledge.org/FullBashGuide mkdir -p "$HOME/bin" echo 'PATH="$HOME/bin:$PATH"' >> "$HOME/.bashrc" Falls sein script pupu heisst und im Ordner nunu liegt, kann kopiert er den Ordner nunu in ~/bin und macht mit nautilus eine Verknüpfung von pupu in den Ordner ~/bin. Diese Verknüpfung kann er dann pupu nennen oder pu, falls puupu kann er in der Terminalsitzung in der er pupu sehr oft braucht, z.B. "pupu -h -d /lulu/" auch - alias pupu="pupu -h -d /lulu/" - schreiben, das vergisst das Terminalfenster aber beim nächsten mal. Falls er den Link pu genannt hat, kann er pupu einfach mit pu starten. Das hat auch tomtomtom vorgeschlagen. |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 98 |
@user unknown Danke für die Info! |