2014-07-11 3 views
0

J'essaie d'exécuter un script Linux sur Java qui rend un fichier exécutable. Le script contient les éléments suivants:Java exécutant le script Linux

#/bin/bash 
chmod +x * 

REMARQUE: Le script est exécutable (chmod + x)

code Java Mon contient les éléments suivants:

try { 
    Process p = Runtime.getRuntime().exec("./Scripts/execute.sh"); 
}catch (Exception e1) { 
    System.out.println("Exception: "); 
    e1.printStackTrace(); 
} 

Pour une raison que je ne semble pas capable d'exécuter le script. J'ai déjà essayé d'exécuter un script simple avec 'echo' hello '' et j'ai pu voir la sortie. Est-ce que quelqu'un sait comment faire cela?

+0

Quelle est l'erreur \ exception? –

+0

Il semble que le script ne soit pas exécuté?! Pas d'exception – Michael

+0

J'ai utilisé du code pour faire la sortie de la commande et il ne donne aucune erreur et ne donne aucun type de message. EDIT: Bizarre, j'ai changé la ligne d'exec en "chmod + x/chemin/vers/fichier" et j'ai pu rendre le fichier exécutable ... Mais sans utiliser le script –

Répondre

0

C'est une autre approche.

Vous pouvez utiliser NIO.2 pour cela. (Suppose que vous utilisez Java> = 7)

Jetez un oeil à setPosixFilePermissions

Vous pouvez utiliser le Posix attribut pour définir les autorisations de fichier. PosixFilePermissions

+0

Nous vous remercions de votre suggestion, mais l'invocation des commandes shell Linux de mon programme serait plus facile à implémenter, n'est-ce pas? –

+0

Au moins, il devrait fonctionner :) Idk pourquoi le script sh ne fonctionne pas – Michael

+0

Et il ne devrait vraiment pas y avoir beaucoup de travail pour l'implémenter :) – Michael

Questions connexes