J'utilise ls -l -t
pour obtenir la liste des fichiers d'un répertoire classés par heure.
Je voudrais limiter le résultat de la recherche aux 2 premiers fichiers de la liste.
Est-ce possible?
J'ai essayé avec grep et j'ai eu du mal.
Vous pouvez le diriger dans head
:
ls -l -t | head -3
Vous donnera les 3 premières lignes (2 fichiers et le total).
Cela vous donnera juste les 2 premières lignes de fichiers, en sautant la ligne de taille:
ls -l -t | tail -n +2 | head -2
tail
supprime la première ligne, puis head
sort les 2 lignes suivantes.
Pour éviter de traiter la ligne de sortie supérieure, vous pouvez inverser le tri et obtenir les deux dernières lignes
ls -ltr | tail -2
C'est assez sûr, mais en fonction de ce que vous ferez avec ces deux entrées de fichier après les avoir trouvées, vous devriez lire Parsing ls sur les problèmes d'utilisation de ls
pour obtenir des fichiers et des fichiers information.
Vous pouvez utiliser la commande head
pour saisir uniquement les deux premières lignes de sortie:
ls -l -t | head -2
Ou vous pouvez essayer juste ça
ls -1 -t | head -2
Le commutateur -1 saute la ligne de titre.
Vous devez passer par la tête.
ls -l -t | tête -n 3
affichera les deux premiers résultats.