Afficher chemin absolu avec la commande ls - Shell/Batch - Programmation
Marsh Posté le 04-01-2007 à 15:32:34
DarkAngel_s a écrit : bonjour
|
Subtilité de "ls", si tu demande de lister un répertoire (comme "ls rep" ) il va te donner le contenu de "rep", à savoir le nom "brut" de chaque fichier. En revanche, si tu demandes de lister un fichier (comme "ls rep/truc" ), il va te donner le nom exact du fichier tel que tu l'as demandé, à savoir "rep/truc".
Tape donc "ls /usr/*" plutôt que "ls /usr"...
Marsh Posté le 06-01-2007 à 00:21:09
Accessoirement, ajouter l'option -d pour éviter d'afficher le contenu d'éventuels sous-répertoires...
Marsh Posté le 06-01-2007 à 01:36:27
Sve@r a écrit : Subtilité de "ls", si tu demande de lister un répertoire (comme "ls rep" ) il va te donner le contenu de "rep", à savoir le nom "brut" de chaque fichier. En revanche, si tu demandes de lister un fichier (comme "ls rep/truc" ), il va te donner le nom exact du fichier tel que tu l'as demandé, à savoir "rep/truc". |
L'inconvénient étant que si y'a trop de fichiers, la ligne avec le * sera étendu à une chaîne trop longue pour que le shell l'accepte.
Marsh Posté le 06-01-2007 à 02:14:41
Toucouch a écrit : Accessoirement, ajouter l'option -d pour éviter d'afficher le contenu d'éventuels sous-répertoires... |
Bonne remarque !!!
0x90 a écrit : L'inconvénient étant que si y'a trop de fichiers, la ligne avec le * sera étendu à une chaîne trop longue pour que le shell l'accepte. |
Ca m'est déjà arrivé avec grep (grep machin * => message "grep: too many arguments" ) mais jamais avec ls.
Sinon le script récursif qui
- lit le répertoire qu'on lui donne en argument
- affiche son contenu fichier par fichier
- si fichier traité est répertoire => appel du script pour le répertoire en question
Marsh Posté le 06-01-2007 à 02:31:42
> for f in `seq 33000`;do touch $f;done
> ls *
Marsh Posté le 08-01-2007 à 21:27:19
0x90 a écrit : > for f in `seq 33000`;do touch $f;done |
J'essaye ça dès demain
Marsh Posté le 03-01-2007 à 10:32:29
bonjour
j'aimerais pouvoir afficher le chemin absolu de chaque fichier avec la commande ls, et ce sur une seule ligne
mais malheureusement je ne vois aucune option qui permet de faire ca
exemple :
je voudrais afficher :