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 :

Variables nom d'un répertoire linux


Sujet :

Shell et commandes GNU

  1. #1
    Membre habitué
    Femme Profil pro
    Ingénieur intégration
    Inscrit en
    Mars 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2019
    Messages : 8
    Par défaut Variables nom d'un répertoire linux
    Bonjour,

    je dois mettre le résultat de la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var1=$(ll /local/home1/monrepertoire -rt | tail -1 | awk '{print $9}')
    dans la variable var1 mais ça ne fonctionne pas

    Quelqu'un pourrait m'aider à comprendre pourquoi?

    Merci de votre aide

    Bonne journée

    Valentine

  2. #2
    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 et Bienvenue,

    la commande 'll' n'existe pas, en générale, c'est juste un alias.

  3. #3
    Membre émérite Avatar de balkany
    Homme Profil pro
    Touriste
    Inscrit en
    Juillet 2017
    Messages
    348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Touriste

    Informations forums :
    Inscription : Juillet 2017
    Messages : 348
    Par défaut
    Citation Envoyé par Valentine31 Voir le message
    ça ne fonctionne pas
    Il faudrait être plus précise : la commande s'exécute-t-elle correctement ? si oui, donne-t-elle le résultat voulu ? si oui, ce résultat se retrouve-t-il correctement dans var1 ?

  4. #4
    Membre habitué
    Femme Profil pro
    Ingénieur intégration
    Inscrit en
    Mars 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2019
    Messages : 8
    Par défaut Résultat grep
    j'ai réussi à mettre le nom de ma variable dans var1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var1=$(ll /local/monchemin -rt | tail -1 | awk '{print $9}');
    maintenant j'ai la variable var2 qui contient le nom de mon répertoire dans lequel je recherche le texte "texto"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var2=$(cat $var1 | grep "texto")

  5. #5
    Membre émérite Avatar de balkany
    Homme Profil pro
    Touriste
    Inscrit en
    Juillet 2017
    Messages
    348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Touriste

    Informations forums :
    Inscription : Juillet 2017
    Messages : 348
    Par défaut
    Certes, mais alors pourquoi passer par var1 ?
    Par ailleurs, il ne faudrait pas ici que tes noms de fichiers contiennent des espaces, ou pire…
    Et puis, si la sortie de la première commande est effectivement un nom de répertoire comme tu dis, grep ne doit pas aimer (et avant ça, cat non plus, qui est d'ailleurs inutile).

    Voilà une autre manière de faire qui doit être assez robuste, pour récupérer le nom du fichier le plus récemment modifié dans le répertoire courant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find . -maxdepth 1 -type f -printf '%T@ %f\0' | LC_ALL=C sort -zrk1 | awk 'BEGIN{RS="\0"} {print $2; exit}'
    Ensuite, si tu veux faire un grep sur ce fichier, tu peux passer par xargs, en préservant le caractère nul comme délimiteur pour le nom de fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find . -maxdepth 1 -type f -printf '%T@ %f\0' | LC_ALL=C sort -zrk1 | awk 'BEGIN{RS="\0"} {printf("%s\0",$2); exit}' | xargs -0 grep texto

  6. #6
    Membre habitué
    Femme Profil pro
    Ingénieur intégration
    Inscrit en
    Mars 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2019
    Messages : 8
    Par défaut shell
    Merci beaucoup pour ta réponse

    J'ai une derniere question
    ma variable toto contient une ligne de commande
    dans le shell il faut que je vienne ecrire le contenu de ma variable et idealement il faudrait faire ENTER pour excecuter la commande

    Merci de ton aide

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 651
    Par défaut modération
    là, tu changes de sujet.
    je te suggère d'ouvrir un nouveau sujet : "exécution d'une variable contenant une commande", par exemple.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

Discussions similaires

  1. [XL-2010] Enregistrer avec un nom et un répertoire variable suivant le contenu de la feuille
    Par liner77 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 30/10/2014, 18h18
  2. [POO] Contenu d'une variable nom d'un objet
    Par reventlov dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/05/2006, 17h04
  3. [VB.Net]Comment assigner contenu variable> nom variable ?
    Par jazz matazz dans le forum VB.NET
    Réponses: 4
    Dernier message: 03/02/2006, 17h28
  4. Réponses: 2
    Dernier message: 09/01/2006, 14h52
  5. variable à nom dynamique en javascript
    Par noa dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/01/2005, 01h12

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