Comment obtenir une liste de noms de fichiers sur différentes lignes


116

Je veux obtenir une liste de tous les fichiers dans un répertoire, comme avec ls, afin que chaque nom de fichier soit sur une ligne distincte, sans les détails supplémentaires fournis par ls -l. J'ai regardé ls --helpet n'ai pas trouvé de solution. J'ai essayé de faire

ls -l | cut --fields=9 -d" "

mais lsn'utilise pas un nombre fixe d'espaces entre les colonnes. Une idée sur la façon de procéder, de préférence en une seule ligne?

Réponses:


259

ls -1

C'est un nombre, pas petit L.


5
Je vois cela dans la documentation: cross -x, virgules -m, horizontal -x, long -l, single-column -1, verbose -l, vertical -C Je ne sais pas comment ils en ont trouvé certains.
Alexander Taylor

23

ls -1. De l'aide:

-1 liste un fichier par ligne

Fonctionne sur cygwin et FreeBSD, donc ce n'est probablement pas trop spécifique à GNU.


Fonctionne également sur Ubuntu. Merci
Yonatan Simson

12

solution sans tuyauterie :-)

 ls --format single-column

Notez que les options longues ne sont prises en charge que sur les coreutils GNUBSD ls ne prend en charge que les arguments courts-1


6

Peut-être:

ls | awk '{print $NF}'

note: un nom de fichier avec des espaces tels que "pommes et poires.jpg" deviendra "pears.jpg"
oknate

4

ls | cat ... ou éventuellement, ls -1


4
Veuillez éviter l'utilisation inutile de chat :)
jhwist

3
catn'est pas inutile dans ce cas. Il formate la sortie de lsdans une colonne comme OP le demande.
Felix Eve

3

Utilisez la commande sed pour lister des colonnes uniques

ls -l | sed 's/\(^[^0-9].\*[0-9]\*:[0-9]\*\) \(.*\)/\2/'

ls -lproduit le même résultat que votre réponse entière. Je ne sais pas ce qui sedest ajouté ici ...
Felix Eve

3

Essaye ça:

$ ls | xargs -n num

Voici le numnombre de colonnes dans lesquelles vous souhaitez lister.


1

vous pouvez d'abord l'utiliser. il affichera un fichier par ligne.

ls -l | sed 's /(.*) (. *) $ / \ 2 /'

ou bien vous pouvez utiliser ainsi

trouver . -maxdepth 1 | sed 's /.///'

les deux choses sont les mêmes.


J'obtiens l'erreursed: -e expression #1, char 16: invalid reference \2 on `s' command's RHS
Felix Eve


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.