Lister le contenu de plusieurs répertoires
Ka-El
Messages postés
279
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je cherche une commande unix qui va me permettre de lister uniquement les noms de fichier qui se trouvent dans les répertoires suivants:
/toto/new
/toto/new/tmp
Mon problème, c'est que la commande liste ne doit afficher que les fichiers dont le nom commence par Z* et dont le nombre de caractères ne dépassent pas "8"
Et pour finir, je dois éviter que mon listage affiche les arborescences dans lesquelles il effectue la recherche.
Au final, ma commande doit me donner un résultat de ce type en allant chercher dans les deux arborescences:
Zdghj5lm
Zn4567OP
Z2345678
Zhkm5790
etc...
Merci d'avance pour votre aide !
Ka-El
Je cherche une commande unix qui va me permettre de lister uniquement les noms de fichier qui se trouvent dans les répertoires suivants:
/toto/new
/toto/new/tmp
Mon problème, c'est que la commande liste ne doit afficher que les fichiers dont le nom commence par Z* et dont le nombre de caractères ne dépassent pas "8"
Et pour finir, je dois éviter que mon listage affiche les arborescences dans lesquelles il effectue la recherche.
Au final, ma commande doit me donner un résultat de ce type en allant chercher dans les deux arborescences:
Zdghj5lm
Zn4567OP
Z2345678
Zhkm5790
etc...
Merci d'avance pour votre aide !
Ka-El
A voir également:
- Linux lister répertoires seulement
- Linux reader - Télécharger - Stockage
- Toutou linux - Télécharger - Systèmes d'exploitation
- R-linux - Télécharger - Sauvegarde
- Backtrack linux - Télécharger - Sécurité
- Linux mint 22.1 - Accueil - Linux
3 réponses
salut,
ça se fait "facilement" avec la commande
fais quelques essais, et dis-nous où tu coinces.
ça se fait "facilement" avec la commande
find.
fais quelques essais, et dis-nous où tu coinces.
hello
$ find /toto/new -name "Z*" | awk -F / 'length($NF)<=8 {print $NF}'
# ou
$ find /toto/new -regextype posix-extended -regex ".*/Z.{1,8}" -printf "%f\n"
Salut Dubcek,
Merci pour ton aide précieuse.
Effectivement tes deux exemples fonctionnent très bien, c'est nickel !
En revanche, penses-tu qu'il soit possible de procéder au même listage en utilisant la commande "ls" + options ?
Sachant que je peux m'autoriser ce type d'affichage :
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zdghj5lm
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zn4567OP
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/Z2345678
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zhkm5790
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/Z76GhjDp
etc ...
Mais bien évidemment avec toujours cette restriction sur les fichiers commençant par Z* et comptant au max 8 caractères ?
Merci bien.
Ka-El
Merci pour ton aide précieuse.
Effectivement tes deux exemples fonctionnent très bien, c'est nickel !
En revanche, penses-tu qu'il soit possible de procéder au même listage en utilisant la commande "ls" + options ?
Sachant que je peux m'autoriser ce type d'affichage :
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zdghj5lm
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zn4567OP
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/Z2345678
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/tmp/Zhkm5790
-rw-r----- 1 user groupe 0 janv. 26 13:48 /toto/new/Z76GhjDp
etc ...
Mais bien évidemment avec toujours cette restriction sur les fichiers commençant par Z* et comptant au max 8 caractères ?
Merci bien.
Ka-El
Bon, vu ma nullité en shell, j'ai failli conserver "commande" dans ma ligne ! ;-)
Non, mais j'ai essayé effectivement plusieurs types de "ls", mais ça ne donne aucun résultat.
D'ailleurs Est-ce que la commande "ls" est bien recommandée pour chercher dans deux arborescences différentes ? J'ai un doute...
Non, mais j'ai essayé effectivement plusieurs types de "ls", mais ça ne donne aucun résultat.
D'ailleurs Est-ce que la commande "ls" est bien recommandée pour chercher dans deux arborescences différentes ? J'ai un doute...