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

Linux Discussion :

Besoin d'aide en Programation shell


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Besoin d'aide en Programation shell
    Bonjour

    J'aurai voulu savoir comment je pouvais lister le nom des fichiers comportant une chaine de caractères voulu (présence de sous répertoires). Tout cela sera bien entendu sauvegarder dans un fichier.

    Bonus :
    - je travail sur un serveur SME et je voulais avoir un moyen simple et efficace pour extraire le nom et la date d'un fichier et enregistrer le tout dans un autre fichier.

    ex :
    31/12/2008 /home/test/ttttt/aaaa/ap.txt
    31/12/2008 /home/test/ttttt/aacc/ap.txt
    31/12/2008 /home/test/ttttt/bb/ccccccc/ap.txt
    31/12/2007 /home/test/ttttt/te.txt
    etc.

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par RonnCmoi Voir le message
    Bonjour

    J'aurai voulu savoir comment je pouvais lister le nom des fichiers comportant une chaine de caractères voulu (présence de sous répertoires). Tout cela sera bien entendu sauvegarder dans un fichier.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls *chaine_de_caractères_cherchée* >result
    Citation Envoyé par RonnCmoi Voir le message
    Bonus :
    - je travail sur un serveur SME et je voulais avoir un moyen simple et efficace pour extraire le nom et la date d'un fichier et enregistrer le tout dans un autre fichier.
    ex :
    31/12/2008 /home/test/ttttt/aaaa/ap.txt
    31/12/2008 /home/test/ttttt/aacc/ap.txt
    31/12/2008 /home/test/ttttt/bb/ccccccc/ap.txt
    31/12/2007 /home/test/ttttt/te.txt
    etc.
    Quand tu parles de "date", tu veux sans-doute parler de celle qui est affichée par "ls -l" (date de dernière modif) car un fichier possède 3 dates (date de création ou de modification d'inode, date de dernier accès et date de dernière modif).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l |awk '{print $5 " " $6}' >result
    J'ai mis $5 et $6 car il me semble que la date est en 5° position et le nom en 6° dans le ls -l (je peux pas vérifier et j'ai tapé de mémoire) mais tu pourras facilement rectifier en fonction de la position réelle de ces infos. L'important est que t'aies pigé le principe...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    j'avais deja essayer la commande awk seulement mon serveur n'est plus tres a jour et me lance tout et n'importe quoi :

    ex:
    -rw-r--r-- 3 root root 45698 fév 21 2002 nom_fichier
    -rw-r--r-- 3 root root 2000 mar 2 2002 nom_fichier
    -rw-r--r-- 3 root root 45 fév 18 16:30 nom_fichier
    -rw-r--r-- 3 root root 458 jan 21 2002 nom_fichier

    donc la commande awk ne m'ai d'aucune utiliter vu que je n'ai jamais la meme chose

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par RonnCmoi Voir le message
    j'avais deja essayer la commande awk seulement mon serveur n'est plus tres a jour et me lance tout et n'importe quoi :

    ex:
    -rw-r--r-- 3 root root 45698 fév 21 2002 nom_fichier
    -rw-r--r-- 3 root root 2000 mar 2 2002 nom_fichier
    -rw-r--r-- 3 root root 45 fév 18 16:30 nom_fichier
    -rw-r--r-- 3 root root 458 jan 21 2002 nom_fichier

    donc la commande awk ne m'ai d'aucune utiliter vu que je n'ai jamais la meme chose
    Mais si tu peux. T'as le mois en position 6, le jour en position 7 et soit l'heure si la date est dans l'année courante, soit l'année en position 8 et le nom de fichier en position 9

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l |awk '{printf("%s %s %s\n", $7, $6, $9)}'
    Et si tu veux en plus gérer l'année, te suffit de chercher un ":" dans $8

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l |awk -vaa=`date '+%y'` '{if (index($8, ":") > 0) year=aa; else year=$8; printf("%s %s %s %s\n", $7, $6, year, $9)}'
    Mais ça ne marchera que si t'as un awk récent qui accepte les variables et connait la fonction "index()"...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. besoin d'aide sur tri shell
    Par eaglevmt-4 dans le forum Algorithmes et structures de données
    Réponses: 0
    Dernier message: 30/12/2008, 17h35
  2. SOS mon partiel s'approche jé besoin d'aide je suis nulle en shell
    Par Fatima-Ezzahra dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 05/06/2007, 13h33
  3. Besoin d'aide pour script en shell pour un novice
    Par king_neo2001 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 01/06/2007, 16h18
  4. Besoin d'aide au niveau de Shell
    Par Argael dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 01/08/2006, 11h04
  5. Besoin d'aide pour un script shell
    Par lecharcutierdelinux dans le forum Linux
    Réponses: 5
    Dernier message: 20/05/2006, 10h36

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