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 :

Travailler sur une liste de fichiers


Sujet :

Shell et commandes GNU

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    un bon exemple de l'importance de l'option -r !
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  2. #22
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 459
    Points
    13 459
    Par défaut
    La version que je considère la plus sécurisée est celle-ci :
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while IFS='' read -r ligne
    do
     
    done
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #23
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Points : 33
    Points
    33
    Par défaut
    Pour ce code j'obtiens le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ./test.sh: line 6: syntax error near unexpected token `done'
    ./test.sh: line 6: `done

  4. #24
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    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 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par judkil Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ./test.sh: line 6: syntax error near unexpected token `done'
    ./test.sh: line 6: `done
    Le code de Flodelarab est volontairement incomplet. Il a laissé une ligne vide entre le "do" et le "done" montrant que l'utilisateur peut faire ce qu'il veut ici avec la variable "ligne". Ok c'est pas explicite (moi j'aurais mis une instruction neutre style echo "$ligne" ou même une mention style ... (instruction de son choix) ...) mais ceux qui connaissent le shell le comprennent de suite. D'autant plus qu'il est interdit de créer un bloc vide (si vraiment on doit le faire alors on écrira l'instruction neutre true).
    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]

  5. #25
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 286
    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 286
    Points : 12 742
    Points
    12 742
    Par défaut
    En instruction neutre tu as aussi : .
    Cordialement.

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    ce n'est pas tout à fait neutre, puisque le code de retour est toujours en succès.
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  7. #27
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 286
    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 286
    Points : 12 742
    Points
    12 742
    Par défaut
    Le seul qui soit totalement neutre c'est le commentaire, d'ailleurs, il est tellement neutre qu'il passe inaperçu et peut faire qu'un bloc tombe en erreur s'il n'y a que le commentaire.

    true => c'est vouloir explicitement un résultat positif
    false => c'est vouloir explicitement un résultat négatif
    : => c'est une commande "null" qui ne fait rien mais qui a aussi l'avantage d'absorber ces paramètres et ces input.

    Remplacer une redirection de sortie vers /dev/null:
    Bloc de boucle valide:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while true
    do
     : ici pas encore décidé de mes commandes
    done
    Remplacer une redirection d'entrée depuis /dev/null:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while read a ; do : pas encore décidé mais pas grave, en entrera pas dans la boucle ; done < <(:)
    Cordialement.

  8. #28
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Points : 33
    Points
    33
    Par défaut
    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Boucler un code sur une liste de fichiers
    Par Andromedae dans le forum Général Python
    Réponses: 6
    Dernier message: 05/03/2016, 09h35
  2. [Débutant] Travailler sur une liste d'images
    Par medsyorick dans le forum Images
    Réponses: 1
    Dernier message: 17/07/2013, 17h13
  3. transfert SFTP - boucle sur une liste de fichiers
    Par Nick56 dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 18/12/2008, 09h25
  4. liens sur une liste de fichiers
    Par marlet dans le forum Linux
    Réponses: 7
    Dernier message: 25/09/2008, 11h11
  5. [Procédure stockée] Comment travailler sur une liste de ...
    Par WwiloO dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/02/2006, 11h22

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