Wie Sie einen Befehl in iTerm ausgeführt werden, wenn es startet?
Frage
Ich arbeite den iTerm Terminal-Emulator für den Mac zur Konfiguration zu tun, was ich will. Offenbar wird alles getan, durch das, was sie als „Lesezeichen“. OK, in Ordnung. Ich versuche, ein Lesezeichen zu erstellen, die eine Registerkarte cd zu einem bestimmten Rails-Projekt öffnen und den Befehl script/server
laufen. Was sollte geschehen ist, dass dieser den Server-Daemon startet ( „Mongrel“) und ich werde die Ausgabe Scrollen durch jedes Mal, wenn ich auf diesem Registerkarte sehen sehen.
Im Konfigurationsdialog unter „Befehl“ Ich habe script/server
und unter „Arbeits dir“ ich das Projekt Verzeichnis.
Was ist passiert, dass die Lasche für 1/10-Sekunde erscheint dann verschwindet.
Unter Hinweis auf ein ähnliches Problem, das ich mit dem Unix-Bildschirm Befehl hatte, habe ich versucht, einen „Befehl“ von bash -c 'script/server'
setzen, aber das Ergebnis war identisch.
Lösung
Sie laufen in dieses Problem, weil Ihr Skript ausgeführt und dann beendet. Alles, was Sie tun müssen, ein read
oder etwas ähnlich anspruchsvoll zu sagen, am Ende des Skripts „zu vervollständigen Skript und Fenster schließen eine beliebige Taste drücken ....“ gesetzt wird.
update
Ich schrieb dieses Testskript:
$ cat echoscript
#!/bin/bash
echo "Hello world"
read text
$
Ich habe ein Lesezeichen so:
name: test
command: /Users/chasrmartin/echoscript
Working directory: /Users/chasrmartin
Wenn ich das Lesezeichen test
öffnen, sehe ich meine „Hallo Welt“, und es wartet, bis ich Rückkehr geben. Als ich Rückkehr geben, es geht weg.