Script sh: basename + resultat de commande ls
Résolu
snow_frog
Messages postés
214
Date d'inscription
Statut
Membre
Dernière intervention
-
snow_frog Messages postés 214 Date d'inscription Statut Membre Dernière intervention -
snow_frog Messages postés 214 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
est-il possible de réaliser un basename sur le résultat d'une commande sans passer par une variable intermédiaire ?
en gros je voudrais pouvoir faire ça:
mais je ne sais pas si c'est possible, j'ai essayé différente syntaxe de quote, double quote, accolade... mais n'est pas trouvé la bonne combinaison
est-il possible de réaliser un basename sur le résultat d'une commande sans passer par une variable intermédiaire ?
VAC_tmp='ls home/moi/images/*vacances*.jpg'
VACANCES='basename $VAC_tmp'
en gros je voudrais pouvoir faire ça:
VACANCES=basename 'ls /home/moi/images/*vacances*.jpg'
mais je ne sais pas si c'est possible, j'ai essayé différente syntaxe de quote, double quote, accolade... mais n'est pas trouvé la bonne combinaison
3 réponses
-
Salut,
find ~/Images -maxdepth 1 -name "*vacances*.jpg" -printf '%f\n'
-
ok, merci pour les 2 réponses!
entre temps j'ai trouvé une solution, mais qui n'est pas perenne...
comme en fait ma recherche ne me donne qu'un seul retour ça fonctionnait
mais le jour ou j'ai 2 photos *vacances* dans le même repertoire en effet ça allait bugger..
VACANCES='basename \'/home/moi/images/*vacances*.jpg\''
-
hello
basename n'accepte qu'un fichier, essayerVACANCES=$(cd /home/moi/images; ls *vacances*.jpg)