Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Script starten im Terminal

Script starten im Terminal

sYntiq21.12.0612:59
Huhu.

Ich bin gerade dabei mir das Spiel "Vendetta Online" etwas zu konfigurieren. Hierzu möchte ich mir gern ein Bind anlegen, welches mir Ingame anzeigt wer gerade online ist.

Dazu wieder rum brauche ich ein externes Shellsript, welches ich vor Spielstart per Terminal starten muss.

Hier eine Beschreibung des Scriptes und was es machen soll:

Problem: Ich hab leider nicht wirklich so die Terminal Erfahrung. Jedesmal wenn ich versuche das Script über

./vwho.sh start

zu starten kommt ein:

"-bash: ./vwho.sh: Permission denied

Was läuft da falsch?

Das Script liegt in

/Applications/Games/Vendetta.app

Mac OS X 10.3.9

2te Frage: Kann ich den Start (sollte er jemals funktionieren) auch automatisieren? Am liebsten wäre es mir wenn ich ein Icon anklicke und er dann das Script und Vendetta Online startet.
0

Kommentare

Sen
Sen21.12.0613:24
anscheinend hast du nicht die entsprechenden Rechte.
Schau mal mit i ob du alle Rechte hast. Wenn ja dann braucht das script erweiterte Rechte (ich habe es mir nicht genauer angeschaut)
Du kannst dem Script Adminrechte einräumen, wenn du es mit

sudo ./vwho.sh start

startest (Admin PW muss eingetippt werden... wenn das script wärend des Spiels probleme hat kann man ein

sudo -s ./vwho.sh start

draus machen... dann ist der SuperuserDo modus für mehr als nur eine Aktion... aber das Script sollte auch ohne -s laufen...)


zur 2ten Frage:
wenn ich mich nicht irre sollte man die Originaldateidie in
/Applications/Games/Vendetta.app/Contents/MacOS
liegt umbennenen können (z.B. in VendettaOrig) und das script wie die original Datei benennen und dort hinschieben... dann an's Scipt noch das er die OriginalDatei am ende ausführt....
Sollte hinhauen.... bin mir aber nicht ganz sicher....
„Don't Panic“
0
sYntiq21.12.0613:39
Danke schon mal für die Hilfe.

Laut Apple-I habe ich alle Rechte (danach hat jeder bei dem File alle Rechte) Trotzdem "Permission Denied"

Wenn ich das per sudo mache sieht es folgendermassen aus:

sudo: ./vwho.sh: command not found
0
Sen
Sen21.12.0614:04
ach... ja... klar... versuch mal:
sudo open ./vwho.sh start
sollte dann funzen... aber ich bin was das Terminal angeht auch ein Anfänger... ich kenn nur die ein oder andere gurundlegende sache...
„Don't Panic“
0
Arachnid
Arachnid21.12.0614:07
chmod +x ./vwho.sh

damit es executable wird!
0
sYntiq21.12.0614:09
2006-12-21 13:08:11.730 open[2621] No such file: /Applications/Games/Vendetta.app/start

(Und zusäzlich öffnet er mir vwho.sh in Subethaedit. )
0
sYntiq21.12.0614:13
Arachnid: Danke. Jetzt scheint er irgendwas zu machen, endet aber nach ein paar Sekunden in

#: bad interpreter: No such file or directory

Lieg ich richtig das jetzt quasi irgend etwas am Script falsch ist?
0
Arachnid
Arachnid21.12.0614:21
kommt der fehler während des chmods? oder Beim ausführen deines scriptes?
Wenn 2. dann ja: Er findet die Datei/Ordner nicht, der irgendwo angegeben is.
wenn 1.: Dann hast du falsch ge'chmodded.
0
sYntiq21.12.0614:26
Beim Ausführen des Scriptes.

Ok, dann werde eich mir das Script noch mal genauer angucken (Als ob ich von so etwas Ahnung hätte) und dann still und heimlich verzweifeln

Danke.
0
Sen
Sen21.12.0615:51
ich denke die Zeilen
ERRLOG="/home/$USER/.vendetta/errors.log" # Path of Vendetta error.log
und
HFILE="/home/$USER/.vendetta/vwho.cmd" # Helperfile
solltest du bearbeiten...
finde heraus wo die Files liegen... (vermutlich in der Libary oder dem Programm)

Ich glaube das folgende weist du, ich sags trotzdem:
wenn sie in der Hauptlibary liegen:
/Libary/[rest des Pfades]
wenn sie im Programm liegen halt
/Applications/Games/Vendetta.app/[rest des Pfades]
bei der Benutzerlibary:
~/Libary/[rest des Pfades]

die Tilde (Wellenlinie) macht man mit alt+n und sie sagt dem system "Ordner des Momentanen Users"
„Don't Panic“
0
sYntiq21.12.0616:17
Hmm... Das Errorlog liegt in /Applications/Games/Vendetta.app/errors.log

Ist dot auch vorhanden. (Habe für den richtigen Pdad einffach die Datei ins Termianl gezogen)

ERRLOG im Script zeigt auch auf die Datei in dem Pfad.

Das "vwho.cmd" ist wiederrum gar nciht vorhanden. Ich denke mal das ist eine datei die das Script erzeugt/erzeugen soll, oder? Ich habe eine leere Textdatei it diesem Namen erstellt und unter /Applications/Games/Vendetta.app/vwho.cmd gepackt.

Leider habe ich nach wie vor "#: bad interpreter: No such file or directory"

( Mit und ohne vwho.cmd "Leerdatei" )

Als nächstes habe ich mal sämtliche Kommentare entfernt (Also alles was mit "#" begann)

Nun sieht das Ergebnis folgendermassen aus:

PROG=curl -s: command not found
./vwho.sh: line 5: syntax error near unexpected token `('
functionPLAYERS=`echo "$PLAYERS" | sed -e 's|^.*<td class=rankText align=left>||' -e 's|</td>.*$||' -e 'esac'"$1;;st)) echo $OUTPUTrlist requested by $USER"}"; then/$2) }' | cut -c 1-3`


"curl" ist auf dem Rechner aber vorhanden.
0
derbalu
derbalu21.12.0616:25
Bad Interpreter bedeutet eigentlich, dass der
pfad inder ersten zeile falsch ist.

Gib mal "which bash" ein (ohne ")
Als Ergebnis sollte gleich der ersten Zeile sein (Die mit dem #!/bin/bash)


„… und täglich grüßt das Murmeltier …“
0
sYntiq21.12.0616:28
derbalu
Gib mal "which bash" ein (ohne ")
Als Ergebnis sollte gleich der ersten Zeile sein (Die mit dem #!/bin/bash)

Jep. Er gibt mir dann "/bin/bash" aus.
0
derbalu
derbalu21.12.0616:46
Ersetzte doch mal
PROG="curl -s"
durch
PROG="/usr/bin/curl -s"

Dann hat er auch den ganzen Pfad zum "curl"



„… und täglich grüßt das Murmeltier …“
0
sYntiq21.12.0617:11
PROG=/usr/bin/curl -s: No such file or directory

Also das gleiche wie vorher, nur halt dieses Mal mit dem ganzen Pfad....
0
_mäuschen
_mäuschen21.12.0619:18

Dieser script ist 'nur' unter Linux lauffähig.

Ich habe nun nur bis Zeile 20 die 'bugs' eliminiert.

ERRLOG="/Users/leo/Desktop/Vendetta.app/errors.log"    # Path of Vendetta error.log

HFILE="/Users/leo/Desktop/Vendetta.app/vwho.cmd"     # Helperfile

if ! [ -f `$ERRLOG`]; then
  echo "$ERRLOG not found!"
  exit 1
fi



Jetzt schreit der script nach gawk :-&
gawk not found, please install!

etc.

Ich geb's auf ;-)

und spiele Descent 3; hahaha



0
_mäuschen
_mäuschen21.12.0619:20

Nachtrag

chmod 775 Vendetta.app/errors.log


hehehe(devil)
0
sYntiq21.12.0619:39
Danke für den Versuch.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.