IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Projet création d'une commande Linux


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Janvier 2017
    Messages : 8
    Par défaut Projet création d'une commande Linux
    Bonjour,
    Je suis étudiant en DUT informatique et lors des projets de fin de semestre nous devons faire une commande en linux.
    Je suis vraiment à la ramasse dans cette matière, et donc je cherche de l’aide pour ce projet qui représente une partie important de ma note de semestre.

    Le but du projet est de :
    - créer l’arborescence résultat de la commande ps -edf. Avec le nom des PID, et un fichier texte pour le nom du processus.
    - écrire un script bash pour produire un fichier de la forme de la sortie de ps -edf. L’inverse de la première commande.


    Je suis tout ouïe pour toutes pistes ou aide de votre part …

    Merci beaucoup et bonne journée !

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 654
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 654
    Par défaut
    Bonjour,

    Le but du projet est de :
    - créer l’arborescence résultat de la commande ps -edf. Avec le nom des PID, et un fichier texte pour le nom du processus.
    - écrire un script bash pour produire un fichier de la forme de la sortie de ps -edf. L’inverse de la première commande.

    L’inverse de la première commande.

    vue la précision du sujet, je crois qu'il y a quelqu'un qui ne veut pas que tu réussisses ton semestre.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre habitué
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Janvier 2017
    Messages : 8
    Par défaut
    Est ce que, écris comme ça, c'est plus clair ?
    Merci :p !

    Le but du projet est de créer l’arborescence résultant de la commande ps -edf. Tout comme chaque
    répertoire a un répertoire parent, chaque processus en a un aussi. Il faudra donc créer l’arborescence sur ce
    modèle. Les répertoires auront le nom des PID correspondant. Dans chaque répertoire, un fichier texte sera
    créer contenant le nom du processus ( CMD )
    Nous appellerons cette commande arbo_ps.sh et nous l’implémenterons d’une option d’aide -h ou --helpqui renverra l’aide suivante : ....
    consiste à écrire et à tester un script bash qui produit un fichier
    2eme question :Consiste à écrire et tester un script bash de la forme de la sortie de ps -edf depuis une arborescence donnée. C’est en fait l’effet inverse de la première commande.


    J'ai fais ps -edf du coup j'ai tout mais il faut que je trie selon les parents et tout ça ..

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 654
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 654
    Par défaut
    trier ? non. ce n'est pas nécessaire. du moins, pour la première partie.

    tu peux déjà partir sur Comment parcourir un fichier, car cela s'applique aussi, en l'adaptant, au parcours de la sortie d'une commande.

    la deuxième partie semble requérir davantage d'astuces, car il faut parcourir une hiérarchie, mais les fonctionnalités avancées de bash doivent permettre de simplifier ce cheminement en lecture ligne à ligne...
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Expert confirmé Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 041
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 041
    Par défaut
    salut,

    à vue de pif comme ça j'aurais tendance à penser "récursif" de manière à simplifier grandement les choses, sachant qu'à la racine on ne doit donc avoir qu'un répertoire 1/ qui correspond à init

  6. #6
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 347
    Par défaut
    Bonjour,

    Non, à la racine, tu peux en avoir plus:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UID         PID   PPID  C STIME TTY          TIME CMD
    root          1      0  0  2016 ?        00:08:55 /sbin/init
    root          2      0  0  2016 ?        00:00:07 [kthreadd]
    Ici, une simple boucle peut aussi le faire:
    Pour chaque ligne on récupère le PPID, le PID et le CMD et on passe simplement les 2 commandes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mkdir -p ${PPID}/${PID}
    echo "$CMD" >${PPID}/${PID}/CMD
    Ici, il reste juste à gérer les cas PPID=0 ou on considère que 0 est le répertoire racine.

Discussions similaires

  1. [Système] executer une commande linux
    Par kirbs dans le forum Langage
    Réponses: 7
    Dernier message: 08/12/2005, 09h40
  2. Executer une commande linux distante
    Par g-rom3 dans le forum Linux
    Réponses: 11
    Dernier message: 06/11/2005, 19h33
  3. Exécuter une commande linux.
    Par casafa dans le forum Linux
    Réponses: 4
    Dernier message: 20/07/2005, 23h13
  4. Réponses: 1
    Dernier message: 30/04/2004, 11h36
  5. Réponses: 2
    Dernier message: 24/06/2003, 20h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo