Bash: permission non accordée

Bonjour, je me nomme Jean Désiré

j'ai comme os linux Ubuntu , depuis deux jours, je n'arrive pas à exécuté mes programmes . Il n'ya pas de problème au niveau de la compilation ,mais quant à l'exécution , j'obtient ce message :" bash/ permission non accordée"
je me mets en root et j'obtient le même résultat . toute aide serait la bienvenue. Merci

2 réponses

  1. normalement juste apres compilation un .
    /NomProg
    suffit à executer le prog
    mais si non il faut penser a autorisier l'execution de ce fichier programme
    soit bouton droit -> propriétés -> permissions -> cocher la case "rendre ce fichier executable" (ou un truc du genre)
    soit en utilisant la commande chmod
    sudo chmod +x NomProg


    et lis ceci
    http://doc.ubuntu-fr.org/permissions
    http://doc.ubuntu-fr.org/droits
    8
    1. le pblem persiste ,g pense ke g ferai mieu de vous donner le programme et que vs l'exécutiez chez vous pour voir c que ca donne. thx
      0
    2. Salut,

      Prend le temps de regarder si il a droit d'exécution.

      Sinon tu peux toujours donner ton programme ou ses sources pour voir si quelqu'un est capable de faire quelque chose avec, mais je crois bien que c'est un problème avec les droit d'exécution.

      @++ :- )

      Edit : Regarde aussi si tu es propriétaire du fichier, car si tu as essayer de le lancer en root ça peut avoir changer le propriétaire.
      0
    3. petite rectification => il y a un point avant le /
      et donc pour executer c'est plutot
      ./NomProg


      je puis ajouter qu'en utilisant un IDE (exmple code blocks ou geany) il permet de compiler puis d'executer sans trop de cassement de tete !!!
      bonne nuit
      0
    4. Merci pour toutes vos suggestions ,mais le problème persiste , alors voici le code :

      #include<stdio.h>

      char* result;

      char* Remplacer( char* dez) { int k;
      char* T[4]; T[0] = "lundi";
      T[1] ="mardi";
      T[2] ="mercredi";
      T[3] ="jeudi";

      char* H[4];H[0]="19h";
      H[1]="20h";
      H[2]="21h";
      H[3]="22h";

      char* C[4]; C[0]="france4";C[1]="madagascar4"; C[2]= "quebec3";C[3]="senegal6";

      /*ligne 23 */ for (k=0;k<=4;k++){if(dez==T[k]) result=T[k+1];
      else if (dez==H[k]) result=H[k+1];
      else if (dez==C[4]) result=C[k+1];

      else k++; }

      return result ; //ligne 30

      }

      int main(){

      /* Déclaration des variables */
      char* alize[4]; char* xorg[4];char* pamela[4]; char* wolverine[4];
      char* lillekim[4]; char* mystique[4];

      int i,j,fin; fin=0;

      /* initialisation des variables*/
      alize[0]="SoireeFoot"; alize[1]="Jeudi"; alize[2]="19H"; alize[3]="France4";
      xorg[0]="GMYM'Ac"; xorg[1]="Mardi"; xorg[2]="19H"; xorg[3]="Madagascar4";
      pamela[0]="VMV"; pamela[1]="Lundi"; pamela[2]="20H"; pamela[3]="France4";
      wolverine[0]="BOBOBO"; wolverine[1]="Mardi"; wolverine[2]="22H"; wolverine[3]="Senegal6";
      lillekim[0]="GMYM'Ac"; lillekim[1]="Mercredi"; lillekim[2]="19H"; lillekim[3]="France4";
      mystique[0]="SoireeFoot"; mystique[1]="Jeudi"; mystique[2]="21H"; mystique[3]="Madagascar4";

      while(fin=0) { if ( (alize[0]==lillekim[0])||(alize[0]==mystique[0]))
      for (j=1; j<=4;j++) if ((alize[j]==lillekim[j])||(alize[j]==mystique[j])) { Remplacer(alize[j]);alize[0]="vu";}

      else if ((xorg[0]==lillekim[0])||(xorg[0]==mystique[0]))
      for (j=1; j<=4;j++) if ((xorg[j]==lillekim[j])||(xorg[j]==mystique[j])) { Remplacer(xorg[j]);xorg[0]="vu";}
      else
      fin=1 ;

      }
      for (i=1;i<=4;i++) if ((pamela[i]==alize[i])|| (pamela[i]==xorg[i])) Remplacer(pamela[i]);
      for (i=1;i<=4;i++) if((wolverine[i]==alize[i])||(wolverine[i]==xorg[i])|| (wolverine[i]==pamela[i])) Remplacer(wolverine[j]);

      alize[0]="SoireeFoot"; xorg[0]="GMYM'AC";
      printf("\n %s %s %s %s",alize[0],xorg[0],pamela[0],wolverine[0]);
      printf("\n %s %s %s %s",alize[1],xorg[1],pamela[1],wolverine[1]);
      printf("\n %s %s %s %s",alize[2],xorg[2],pamela[2],wolverine[2]);
      printf("\n %s %s %s %s",alize[3],xorg[3],pamela[3],wolverine[3]);

      return(1);
      }
      0
    5. en executant ton code il'y a une erreur de segmentation   
      https://fr.wikipedia.org/wiki/Erreur_de_segmentation   
      en plus du warning suivant à la compilation   
      <code>test.c:55: warning: suggest parentheses around assignment used as truth value 
      (j'utilise geany)

      et donc a la ligne 55; je change a tout hasard l'affectation en test d'égalité et plus de warnings ni d'erreurs d'execution

      while(fin==0)

      et bonne SoireeFoot !!!!
      0