2010-08-21 2 views
17

Ich habe eine Bash-Datei, die einige Dateimanipulationen durchführt. Ich möchte das Terminal nicht jedes Mal öffnen müssen, wenn ich es betreibe. Gibt es eine Möglichkeit, das Programm auszuführen, wenn ich es doppelklicke? (Wie ein Windows-EXE-Datei)Eine ausführbare Bash-Datei ausführen, wenn geklickt wird

Dank

+0

Zifei Tong beantwortete Ihre Frage. – arbales

Antwort

23

Sie können dem Dateinamen eine ".command" -Erweiterung hinzufügen. Wenn Sie darauf doppelklicken, wird Terminal automatisch geöffnet und das Skript in einem neuen Fenster ausgeführt. Hinweis: Dies setzt voraus, dass Sie das Skript weiterhin über eine Terminal-Schnittstelle ansehen/mit ihm interagieren möchten. Wenn Sie das ebenfalls vermeiden möchten, wäre es besser, das Skript mit Platypus, AppleScript oder Automator zu umhüllen (wie Zifei und Ned vorschlagen).

+0

Ich wusste nicht, dass Sie das tun könnten. Zu der Zeit habe ich nur die Standardanwendung auf das Terminal eingestellt – jamesatha

12

Was Sie brauchen, ist Platypus.

Platypus ist ein Entwicklertool für das Mac OS X-Betriebssystem. Es kann verwendet werden, um native, perfekt integrierte Mac OS X-Anwendungen aus interpretierten Skripten wie Shell-Skripten oder Perl- und Python-Programmen zu erstellen. Dazu wird das Skript zusammen mit einer ausführbaren Binärdatei, die das Skript ausführt, in eine Anwendungsbündel-Verzeichnisstruktur eingebettet.

+0

vielleicht ist dies nur für linuz, aber gibt es nicht eine Möglichkeit, die Datei zu ändern, um es zu einer ausführbaren Datei zu machen? – jamesatha

+1

@jamesatha: Markieren Sie die ausführbare Datei über 'chmod + x file' und stellen Sie sicher, dass in der ersten Zeile' #!/Bin/bash' steht. – Borealid

+2

Das macht nur eine Datei in einer Shell ausführbar. Es macht es nicht etwas, das angeklickt werden kann, um es im OS X-Finder zu starten. Vereinfacht, dafür muss es entweder ein OS X.app sein oder der Dateityp muss von einer .app behandelt werden. –

2

Mit OS X 10.5 und höher, können Sie wrap the bash shell script in an AppleScript application mit dem AppleScript Editor oder eine Automator Anwendung mit Automator.app (siehe Automator Online-Hilfe).

Sie könnten schreiben (und es gibt Apps, die dies tun) eine OS X-Anwendung, die beliebige .sh Dateien akzeptiert und sie ausführt. Dies ist jedoch im Allgemeinen eine schlechte Idee, da Sie sich dadurch Angriffen aussetzen können, wenn Sie versehentlich eine schädliche Shell-Skriptdatei herunterladen, die automatisch von Ihrem Webbrowser geöffnet wird. Besser, explizit zu sein.

7

Die einfachste Sache zu tun ist, geben Sie ein: sudo chmod 755 the_file_Name. Dies ermöglicht Ihnen, auf die Datei im Finder doppelklicken.