Aide sur un executable
Résolu
sergioramos04
-
dindoun Messages postés 1047 Statut Membre -
dindoun Messages postés 1047 Statut Membre -
Bonjour,
comment obtenir un executable d'un script shell (comme .exe en windows)
en tappant ./nom_programme ,on obtient un executable ,alors j'ai pensé à ecrire une fonction c qui appelle le script shell en donnant un executable en c
aidez moi et merci bcp
comment obtenir un executable d'un script shell (comme .exe en windows)
en tappant ./nom_programme ,on obtient un executable ,alors j'ai pensé à ecrire une fonction c qui appelle le script shell en donnant un executable en c
aidez moi et merci bcp
Configuration: Windows XP Internet Explorer 7.0
2 réponses
-
en tapant ./nom_programme ,on obtient un executable
Non. Cette commande permet de lancer un exécutable appelé nom_programme, mais en soit il faut que ce script ait les droits en exécution pour devenir un exécutable a proprement parlé, par exemple en tapant :chmod a+x mon_programme
alors j'ai pensé à ecrire une fonction c qui appelle le script shell en donnant un executable en c
Alors attention contrairement à un script shell, un programme écrit en langage C doit être compilé. Cela signifie que tu as un fichier source (par exemple plop.c) que tu compiles avec gcc pour produire un executable (par exemple plop). Supposons que mon fichier plop.c contienne :#include <stdio.h> int main(){ printf("pouet !\n"); return 0; }
Je le compile pour produire un exécutable plop :gcc -W -Wall -o plop plop.c
Du coup je peux lancer le programme plop :./plop
Tu peux via un programme en C appeler un exécutable à l'aide de la commande execve ou execvp (fais une petite recherche google pour voir des exemples), comme par exemple un script shell.
Bonne chance -
salut
petit rajout
créons un fichier essai :touch essai
ls -al essai
nous donne :-rw-r--r-- 1 0 2008-12-18 14:44 essai
aprèschmod a+x essai
on als -al essai
-rwxr-xr-x 1 login groupe 0 2008-12-18 14:44 essai
tu vois que x a été rajouté trois fois ( grace au a ) ce qui signifie qu'il devient exécutable
en tapant ./essai
deuxime précision
sous linux les fichiers exécutables shell ressemblent plus aux fichier .bat de windows mais en plus puissant ( d'où l'intéret de linux ) ce qui permet de fonctionner avec des fichiers lisibles humainenemnt car les fichiers shell sont des fichiers textes exécutés par le programme sh ( ou csh ... )