GNU/Linux >> Tutoriels Linux >  >> Linux

unix - début ET fin du fichier

Vous pouvez simplement :

(head; tail) < file.txt

Et si vous avez besoin d'utiliser des tuyaux pour une raison quelconque, alors comme ceci :

cat file.txt | (head; tail)

Remarque :imprimera les lignes dupliquées si le nombre de lignes dans le fichier.txt est inférieur aux lignes par défaut de l'en-tête + aux lignes par défaut de la queue.


Pour un flux pur (par exemple, la sortie d'une commande), vous pouvez utiliser 'tee' pour bifurquer le flux et envoyer un flux à la tête et un à la queue. Cela nécessite d'utiliser soit la fonctionnalité '>( list )' de bash (+ /dev/fd/N):

( COMMAND | tee /dev/fd/3 | head ) 3> >( tail )

ou en utilisant /dev/fd/N (ou /dev/stderr) plus des sous-shells avec une redirection compliquée :

( ( seq 1 100 | tee /dev/fd/2 | head 1>&3 ) 2>&1 | tail ) 3>&1
( ( seq 1 100 | tee /dev/stderr | head 1>&3 ) 2>&1 | tail ) 3>&1

(Aucun de ces éléments ne fonctionnera dans csh ou tcsh.)

Pour quelque chose avec un peu plus de contrôle, vous pouvez utiliser cette commande perl :

COMMAND | perl -e 'my $size = 10; my @buf = (); while (<>) { print if $. <= $size; push(@buf, $_); if ( @buf > $size ) { shift(@buf); } } print "------\n"; print @buf;'

ed est le standard text editor

$ echo -e '1+10,$-10d\n%p' | ed -s file.txt

Linux
  1. Commandes tête et queue sous Linux expliquées avec des exemples

  2. Linux - Comprendre les autorisations Unix et les types de fichiers ?

  3. Exemples de commandes Linux tail

  4. Commandes d'accès aux fichiers sous Linux - rechercher, trier, tête, queue

  5. exemples de commandes tail sous UNIX/Linux

DOS vers Unix :commandes et exemples

8 exemples de commandes Head sous Linux

Commande Tail Linux

Comment convertir un fichier Windows en un fichier UNIX

Commande AWK sous Linux/Unix

Comprendre les autorisations UNIX et les types de fichiers