Unter MacOS einen Befehl auf Konsole ausführen?

Status
Nicht offen für weitere Antworten.

Math55

Bekanntes Mitglied
hallo, ich bin gerade dabei, dateien aus einem javaprogramm raus auszuführen. dazu nehm ich runtime.exec(command). das klappt unter windows und linux gut, aber unter macos geht das nicht, wegen der application packages. jemand ne idee, wie ich das mache könnte? gibts da schon sowas wie einen filelauncher?

danke:)
 

Math55

Bekanntes Mitglied
nabend, dachte ich auch, geht aber nicht....seltsam. was passiert eigentlich, wenn mazum beispiel eine class datei unter mac im browser öffnet? nimmt der browser dann die standardanwendung zum öffnen von class files?

gruß und danke:)
 
D

Demo

Gast
Nach dieser Frage gegoogelt ergab:
MacOSX kennt wie auch schon das klassische MacOS ResourceForks und DatenForks.

Wenn eine Datei über einen ResourceFork verfügt, dann werden die darin enthaltenen Informationen ausgewertet um die zu dieser Datei passende Applikation zu finden.

Existiert kein solcher ResourceFork, dann wertet MacOSX eine eventuell existierende Dateiendung aus und ermittelt dann mit Hilfe der Dateiendung die passende Applikation.

Sollte die Datei über keine Dateiendung verfügen, dann ist auch MacOSX mit seinem Latein am Ende.
Allerdings kannst du als Anwender noch immer ein Terminal Fenster öffnen und mit Hilfe des Kommandozeilenbefehl "file" versuchen herauszufinden um was für eine Art von Dateiinhalt es sich handelt.
"file" liest hierzu die ersten paar Byte einer Datei ein (den "Magic") und vergleicht diese Informationen mit seiner Datenbank (eine grosse Auflistung verschiedener "Magic"s). "file" lässt sich hierbei durch Dateiendungen und ResourceForks nicht täuschen. Somit kann mit Hilfe von "file" auch wieder Dateien "retten" die unabsichtlich oder absichtlich eine falsche Dateiendung zugewiesen bekamen.

Zu den ResourceForks:
Beispielsweise kannst du mit dem Editor von MacOSX eine Testdatei erstellen. Wenn du dann abspeicherst, wird der eigentliche Text in den DatenFork geschrieben und gleichzeitig ein ResourceFork an die Datei gepackt in dem steht, welches Programm diese Datei erstellt hat und -- vereinfacht gesprochen -- um welche Art von Dateiinhalt (Text, Video, Grafik, etc.) es sich handelt.

Ganz deutlich wird es, wenn du z.B. mit Safari eine URL auf den Desktop ziehst und dadurch einen Bookmark zu dieser URL auf dem Desktop ablegst.
Wenn du dir diese Bookmarkdatei mit dem Terminal anschaust, dann hat diese Datei genau 0 Byte. Also scheinbar keinen Inhalt. Aber wo ist denn dann die URL? Diese Information ist im ResourceFork gespeichert.

Das ist recht gut erklaert denke ich. Sollte in irgendeiner Form auch in "OSX - The Missing Manual" drin stehen.
 
D

Demo

Gast
so, hier mal kleine veranschaulichung zum Loesen deines Problems:

Code:
import java.lang.*;

public class StartBrowser
{
   public static void main(String args[])
   {
      String[] cmd = {"/usr/bin/open", "-a", "/Applications/Safari.app"};
      try
      {
         System.out.println("Moment Webbrowser lauert...");
         Process p = Runtime.getRuntime().exec(cmd);
         p.waitFor();
         System.out.println("Process exit code: " + p.exitValue());
      }
      catch (java.io.IOException eio)
      {
         System.out.println("IOException starting process!\n" + eio);
      }
      catch (InterruptedException e)
      {
         System.out.println("Interrupted waiting for process!\n" + e);
      }
      catch (Exception x)
      {
         System.out.println("tjahaaa " + x);
      }
   }
}

Damit duerfte es laufen. Ausschnitt aus man open:

EXAMPLES
'open /Volumes/Macintosh HD/foo.txt' opens the document in the default
application for its type (as determined by LaunchServices).

'open /Volumes/Macintosh HD/Applications/' opens that directory in the
Finder.

'open -a /Applications/TextEdit.app /Volumes/Macintosh HD/foo.txt' opens
the document in the application specified (in this case, TextEdit).

'open -e /Volumes/Macintosh HD/foo.txt' opens the document in TextEdit.

'open http://www.apple.com/' opens the URL in the right browser.

'open file://localhost/Volumes/Macintosh HD/foo.txt' opens the document
in the default application for its type (as determined by LaunchSer-
vices).

'open file://localhost/Volumes/Macintosh HD/Applications/' opens that
directory in the Finder.

Dafuer kireg ich ein Bier ;)

Gruss,
Demo
 
R

Roar

Gast
Demo's quote hat gesagt.:
"file" liest hierzu die ersten paar Byte einer Datei ein (den "Magic") und vergleicht diese Informationen mit seiner Datenbank (eine grosse Auflistung verschiedener "Magic"s). "file" lässt sich hierbei durch Dateiendungen und ResourceForks nicht täuschen. Somit kann mit Hilfe von "file" auch wieder Dateien "retten" die unabsichtlich oder absichtlich eine falsche Dateiendung zugewiesen bekamen.

dat is ja ma cool :O :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F URI-Scheme mit Java unter MacOS erstellen? Allgemeine Java-Themen 0
B Java unter MacOs 8.6 oder 9.1 Allgemeine Java-Themen 2
S Runtime exec unter MacOS X will nicht "open pfad" Allgemeine Java-Themen 7
A Java unter Win 10 Allgemeine Java-Themen 1
M Eclipse unter Linux Lite Allgemeine Java-Themen 2
N iText keine Sonderzeichen und Umlaute unter Windows Allgemeine Java-Themen 13
MarekLanger Filebeat in Docker unter Windows Allgemeine Java-Themen 1
H Java SDK unter 32 Bit Allgemeine Java-Themen 5
Killunox MaxHeap Zuweisung unter Linux funktioniert nicht Allgemeine Java-Themen 1
L Tesseract-OCR 4.0 unter Linux funktioniert nicht Allgemeine Java-Themen 3
J Wie konkret funktioniert das Modulsystem unter Java 11? Allgemeine Java-Themen 4
J jar Dateien unter Windows 7 mit spezifischer jdk öffnen Allgemeine Java-Themen 2
I GUI für kleine Pop-Ups unter Windows Allgemeine Java-Themen 1
H Änderung im maximalen heap space unter Windows 7 ?! Allgemeine Java-Themen 5
E Erfahrungen mit Java/JS Bridge unter nodejs und NodeJS/C++ Bridge Allgemeine Java-Themen 0
Neumi5694 Task-Name unter Windows Allgemeine Java-Themen 4
T PDF-Generierung (itext) - läuft unter Eclipse, bei har aber leere Seite Allgemeine Java-Themen 39
S Korrekte Pfadangaben damit eine .jar Datei unter Windwos läuft. Allgemeine Java-Themen 24
K USB infos unter Linux abfragen? Allgemeine Java-Themen 2
K jar-Datei lässt sich unter Windows nicht verwenden Allgemeine Java-Themen 3
N Lizenzensierung von Java Programmen unter Linux Allgemeine Java-Themen 3
H Summe aller Vielfachen von 3 oder 5 unter 1000. Allgemeine Java-Themen 7
krgewb LookAndFeel unter Mac OS Allgemeine Java-Themen 1
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
D JRE in .jar verpacken unter Windows Allgemeine Java-Themen 4
D Aktuell installierte Java Version auslesen unter Windows Allgemeine Java-Themen 5
R probleme beim starten von jar unter linux Allgemeine Java-Themen 2
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
C Windows RCP Application unter Linux bauen lassen Allgemeine Java-Themen 3
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
E Anwendung verhält sich unter Mac anders als Unter Windows. Allgemeine Java-Themen 4
E Drucken einer Pdf Datei unter Java. Allgemeine Java-Themen 1
E Sonderzeichen nicht setzbar: Großes Problem bei Programmierung unter Linux Mint mit Virtual Box Allgemeine Java-Themen 5
F Mencoder unter Java Ausführen Allgemeine Java-Themen 0
G Methoden HashMap speichert unter falschen Schlüsseln Allgemeine Java-Themen 6
G IR Fernbedienung unter Java Allgemeine Java-Themen 0
G Wie installiere ich javax-usb unter windows? Allgemeine Java-Themen 0
S JAAS unter Ubuntu? Allgemeine Java-Themen 0
J Compiler-Fehler Compiliert unter Eclipse aber nicht mit javac Allgemeine Java-Themen 0
M Code läuft unter windows aber nicht unter Linux Allgemeine Java-Themen 6
Guybrush Threepwood Kein user.home unter Windows8 Allgemeine Java-Themen 7
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
R Java-Progamm über Icon starten unter Windows Allgemeine Java-Themen 9
C JasperReports, PDF und "Speichern unter"-Dialog Allgemeine Java-Themen 7
P Eclipse Unter Windows erstelle .jar unter Linux (Ubuntu) funktioniert nicht Allgemeine Java-Themen 5
R ZIP FileSystem unter Windows wirft exception Allgemeine Java-Themen 7
G Runtime.exec beendet Programm unter Linux, wenn Java Programm beendet wird Allgemeine Java-Themen 3
G RXTX native library unter Linux in jar build angeben Allgemeine Java-Themen 4
C Darstellungsproblem unter Debian und OpenJDK Allgemeine Java-Themen 5
R Umlautproblem unter Linux Allgemeine Java-Themen 10
C derby db unter mac os Allgemeine Java-Themen 8
B File Seperator unter verschiedenen OS Allgemeine Java-Themen 2
T Jar File läuft unter Windows aber nicht unter linux Allgemeine Java-Themen 10
B Methode läuft nicht unter UNIX Allgemeine Java-Themen 6
F Process.getInputStream unter Linux Allgemeine Java-Themen 7
S Java-Installation unter Sun OS Allgemeine Java-Themen 3
K Xattr Mac unter Java ansprechen Allgemeine Java-Themen 17
D Clipboard getSystemSelection() funktioniert unter Windows* nicht Allgemeine Java-Themen 3
M Nach Programmdurchlauf werden Zeichen falsch dargestellt + Anderes Verhalten unter Windows Allgemeine Java-Themen 6
L Sicherstellen das 2x die gleichen Daten unter bestimmten Keys enthalten sind. Allgemeine Java-Themen 6
T Javaprogramm unter Linux auf bestimmten Kern starten/laufen lassen ? Allgemeine Java-Themen 22
J Path-Eintrag unter Windows 7 Allgemeine Java-Themen 11
F Eclipse JAVAMAIL läuft nur unter Eclipste Applet Viewer Allgemeine Java-Themen 4
C .jar unter Windows7 über den Explorer starten Allgemeine Java-Themen 6
S (Doppel)Klick-Verhalten vom Desktop unter Java imitieren. Allgemeine Java-Themen 5
Z Probleme mit Java unter Vista/ Windows 7 Allgemeine Java-Themen 12
M Realisierung einer dynamischen Tabelle unter Android Allgemeine Java-Themen 3
C Datei auslesen wie unter Linux mit "tail -f" Allgemeine Java-Themen 3
J Java-Datei unter Mac OS X öffnen - eine Frage der Klasse Allgemeine Java-Themen 2
G Textdatei einlesen unter Windows 7 Allgemeine Java-Themen 4
D Objekte nur unter bestimmten Voraussetzungen erzeugen Allgemeine Java-Themen 4
H String spliten unter berücksichigung von " und \" Allgemeine Java-Themen 7
V linuxprogramm unter java aufrufen??? Allgemeine Java-Themen 4
ruutaiokwu welches design pattern? frage an die oo-experten unter euch... Allgemeine Java-Themen 3
N JAR Datei ausführen unter Angabe einer speziellen Klasse Allgemeine Java-Themen 2
J Eclipse unter Windows 7 Allgemeine Java-Themen 5
T Pfad Anwendungsdaten unter Windows ermitteln Allgemeine Java-Themen 3
B Java Applet unter Mac wird nicht angezeigt Allgemeine Java-Themen 6
A CLASSPATH unter Debian Lenny Allgemeine Java-Themen 4
A Umgebungsvariable unter Windows Vista setzen Allgemeine Java-Themen 60
M Log4J funktioniert nicht unter anderem Benutzer Allgemeine Java-Themen 5
E Alle unter Prozesse der beim schließen mit schließen Allgemeine Java-Themen 3
J dialogys unter linux Allgemeine Java-Themen 4
S Problem beim Drucken auf Netzwerkdrucker unter Linux Allgemeine Java-Themen 9
R Sound unter Java Allgemeine Java-Themen 12
I Fehler unter 64Bit JDK Allgemeine Java-Themen 4
S Jar und Exe verhalten sich unterschiedlich unter Vista Allgemeine Java-Themen 8
D Botschaftssendung unter Klassen Allgemeine Java-Themen 4
H JDIC unter 1.5 Allgemeine Java-Themen 2
G Generics - W.card unter Nutzung von Annotationsklasse? Allgemeine Java-Themen 6
B Frage zu Sichtbarkeit in (Unter)Paketen Allgemeine Java-Themen 9
F Document öffnen unter Linux Allgemeine Java-Themen 4
0 kein Java unter Server 2008 ? Allgemeine Java-Themen 3
J Runtime.exec unter win vista? Allgemeine Java-Themen 10
S unter UNIX - (symbolic) links erkennen? Allgemeine Java-Themen 12
L dateizugriff unter windows nicht behindern Allgemeine Java-Themen 2
W Deployment unter Linux Allgemeine Java-Themen 17
M Drag and Drop FileListFlavor unter Ubuntu - Nautilus Allgemeine Java-Themen 5
F Hilfe beim Starten einer Java Anwendung unter Windows gesuch Allgemeine Java-Themen 8
L Java 1.5 - Anwendung unter 1.6 JRE sehr langsam geworden Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben