Hallo Zusammen Ich möchte so wie in Windows eine *.bat Datei ausführen und habe im Netz folgendens Beispiel gefunden #!/bin/bash echo "Hello World" Diesen Inhalt habe ich in eine Datei (hallo.sh) geschrieben und wenn ich diese ausführe kommt immer die Fehlermeldung bash: hallo.sh Kommando nicht gefunden. Was mache ich falsch. Ich erbitte mir eure Hilfe. Danke. Lg. Johann K.
Klatec schrieb: > Diesen Inhalt habe ich in eine Datei (hallo.sh) geschrieben und wenn ich > diese ausführe kommt immer die Fehlermeldung > bash: hallo.sh Kommando nicht gefunden. > > Was mache ich falsch. Ich erbitte mir eure Hilfe. Danke. Das Verzeichnis, in dem du bist, ist nicht in $PATH, wo ausführbare Programme gesucht werden. Die bash sucht sozusagen überall, nur nicht direkt vor der Nase. :-) Die Lösung von Peter II ist richtig. Ebenso könntest du "bash hallo.sh" eingeben oder dein aktuelles Verzeichnis dem $PATH hinzufügen. Letzteres laß aber lieber sein, wenn du dich damit nicht auskennst.
Ach ja, für "./hallo.sh" muß die Datei als ausführbar markiert sein. Gegebenenfalls "chmod u+x hallo.sh" machen.
Du kannst auch "." an PATH anhängen. Aber es gibt gute Gründe warum man das per Standard bleiben lässt - auf einem Multiusersystem/Server könnte man sonst viel zu leicht jemanden ein Programm unterschieben was statt einem erwarteten/nicht installierten ausgeführt wird! Ausserdem muss die Datei execute-Rechte haben, oder mit "sh hallo.sh" ausgeführt werden. PS wie "#!/bin/bash" funktioniert erkennt man ganz schnell wenn man ein (ersetzbares!) Skript mal mit "#!/bin/rm" beginnt :)
PS Skripte die soweit fertig sind dass man sie ohne besondere Aufmerksamkeit auf dem Rechner nutzen kann bewahrt man traditionell in /usr/local/bin auf, das ist idR auch in PATH drin. PPS die Variable $PATH zu nennen ist eher verwirrend für Anfänger; das ist die Syntax um die Variable PATH zu lesen und nicht der Name der Variable.
Danke für eure Antworten Mit dem Vorschlag vom Martin ("./hallo.sh") hat's funktioniert. Danke. Irgend wie bereuhe ich meine Entscheidung mich mit Embedded Linux zu beschäftigen. Ist ein gewaltiger Sprung von 80C51 auf ARM, aber jetzt muss ich da durch, halt mit kleinen Schritten und der erste ist die Automatisierung des Compilers durch Aufruf des Files. Lg. Johann K.
Nein, ich habe es gerade mal geschaft die example.c die dem Board beiliegt zuladen. Ich habe mir ein Embedded linux Buch gekauft und hoffe das mich dies einige Schritte weiter bringt.
make: http://www.pronix.de/pronix-1187.html Compiler und IDE: http://www.pronix.de/pronix-948.html Klatec schrieb: > Irgend wie bereuhe ich meine Entscheidung mich mit Embedded Linux zu > beschäftigen. Ist ein gewaltiger Sprung von 80C51 auf ARM, aber jetzt > muss ich da durch Ist auch schon ein heftiger Sprung, wie hast du es geschafft nie ein Makefile zu sehen? Immer nur mit IDE gearbeitet? ;-) Wenn du zu Linux passt, wirst du es nicht bereuen und irgendein Linux wird auf deinem Desktop landen... ;-)
Habe auf einem eigem Notebook Linux (Debian wurde von Taskit vorgeschlagen - von dort habe ich mein Board) installiert. Den 80Cxxx habe ich mit dem Keil PK51 bearbeitet. Die Baugruppen stammen von 1999 (selbst entwickelt), die habe ich 2008 wieder vorgeholt und noch über einem Epromsimulator das Programm geladen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.