web-dev-qa-db-fra.com

Linux ls pour afficher uniquement la date et la taille du nom de fichier

Comment puis-je utiliser ls sous linux pour obtenir une liste de la date et de la taille des noms de fichiers uniquement. Je n'ai pas besoin de voir les autres informations telles que le propriétaire ou l'autorisation. Est-ce possible?

79
Pinkie

Pourquoi ne pas utiliser stat au lieu de ls?

stat -c "%y %s %n" *
102
f4m8

Vous pouvez contrôler la façon dont vous répertoriez les fichiers avec l'utilitaire find. ls ne vous permet pas vraiment de spécifier les colonnes souhaitées.

Par exemple:

$ find . -maxdepth 1 -printf '%CY%Cm%Cd.%CH%CM\t%s\t%f\n'
20111007.0601   4096    .
20111007.0601   2   b
20111001.1322   4096    a

L'argument de l'action printf est détaillé dans la page de manuel. Vous pouvez choisir différentes informations de temps, quelle taille vous voulez (taille de fichier ou blocs de disque utilisés), etc. Vous pouvez également le rendre sûr pour les noms de fichiers inhabituels si un traitement supplémentaire est nécessaire.

31
Mat

Vous pouvez toujours utiliser un autre utilitaire comme awk pour formater la sortie de ls1:

/bin/ls -ls | awk '{print $7,$8,$9}'


1.Oui, généralement, vous ne devez pas analyser la sortie de ls mais dans ce cas, la question l'exige spécifiquement ...

27
jasonwryan

Vous pouvez également utiliser la commande "date". Il est très simple d'utilisation:

date -r [nom de fichier]

5
Ankit Khare

Si vous souhaitez utiliser ls, mais conserver une taille appropriée, vous pouvez utiliser:

ls -Ss1pq --block-size=1
5
Deep

où l'espace est défini comme le séparateur et f6 signifie le champ 6

ls -lt | cut -d" " -f6-
1
zzapper

Vous pouvez canaliser deux commandes

ls -l|cut -d" " -f5
1
Deepak