effectuer un ls sans afficher chemin des fichiers [bash] - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 17-11-2008 à 20:04:58
aller dans le répertoire puis lister le contenu du répertoire courant
cd ./serveur |
ls récursif
ls -R |
ls récursif en filtrant sur le nom d'un fichier
ls -R | grep monfichier |
comment veux tu lister des fichiers si tu ne dis pas à ls où ils se trouvent
Marsh Posté le 17-11-2008 à 20:06:43
a coup de basename ?
Marsh Posté le 17-11-2008 à 20:09:19
o'gure a écrit : aller dans le répertoire puis lister le contenu du répertoire courant
|
Merci pour ta réponse, mais en fait ce n'est pas ça le problème, je donne bien le répertoire où se trouvent les fichiers (ls ./serveur/*.*@$login).
Le problème c'est qu'il m'affiche à chaque fois le dit répertoire devant chaque fichier listé.
Marsh Posté le 17-11-2008 à 22:54:05
Ez:~ oxman$ ls Downloads/*.dmg | xargs basename
Parallels-Desktop-fr_FR-4.0.3522.206018.dmg
SCPlugin-0.7.2-1.4.6.dmg
TextMate_1.5.7.dmg
WhatPulse for Mac.dmg
Zooom_Latest.dmg
eve-001881_64451_mac.dmg
Marsh Posté le 18-11-2008 à 10:15:39
C'est pas comme si Le_Tolier t'avais donné la réponse...
Le_Tolier a écrit : a coup de basename ? |
Marsh Posté le 18-11-2008 à 10:23:23
Attention: c'est méthode ne te permettra pas de travailler sur une grosse liste de fichier.
Find est plus approprié pour ce genre de choses:
|
Marsh Posté le 18-11-2008 à 20:07:07
Autre methode fiable et portable si bash est installé :
Code :
|
ou aussi
Code :
|
J'utilise seulement find et des "built-ins" bash
"parameter expansion" et les "process substitution"
Marsh Posté le 19-11-2008 à 12:38:19
Le plus rapide et qui fonctionnera meme avec des noms de fichier contenant des espaces serait:
Code :
|
Mais find propose aussi printf et en une seule commande on a:
Code :
|
Marsh Posté le 21-11-2008 à 12:05:59
find /path -printf "%f\n" |
Pas mal celle là
Par contre xargs, je suis pas fan. Jamais besoin de lui, ya d'autres façons de nettoyer les "\n" "\t" et espaces.
echo * |
Marsh Posté le 21-11-2008 à 12:08:40
e_esprit a écrit : C'est pas comme si Le_Tolier t'avais donné la réponse... |
je suis comme les grands artistes ignorés de mon vivant mais je serais reconnu après ma mort
Marsh Posté le 17-11-2008 à 19:52:08
Salut,
J'ai besoin pour un script bash de lister les fichiers qui se trouvent dans un répertoire (répertoire ./serveur/), mais sans afficher le chemin relatif du fichier.
J'aimerais donc savoir s'il existe un attribut de ls qui permet d'effectuer cette opération, parce que si c'est le cas je ne l'ai pas trouvé.
Merci d'avance!
A+