-
Notifications
You must be signed in to change notification settings - Fork 16
/
head_tail.txt
86 lines (75 loc) · 5.3 KB
/
head_tail.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
HEAD_TAIL
head [FILE]... #Imprime les n premiers lignes ou octets de chaque
#[FILE]... (par défaut les 10 premières lignes)
#Si plusieurs [FILE]..., l'output de chaque FILE est
#précédé par ==> NOM_DU_FILE <== puis newline, et tous
#les ouputs d'un FILE sont séparés par une blank line
#[FILE]... par défaut est stdin : on peut donc rediriger
#son input
head FLUX #Head permet de ne sélectionner qu'une partie d'un FLUX
#d'output qui serait sinon illimité. Par exemple :
#head -c4 /dev/urandom
cat FILE | head #Néanmoins cette syntaxe est à proscrire au profit de
ERREUR ==> #head FILE
-n [-]NOMBRE #Imprime les NOMBRE premières lignes de chaque [FILE]...
--lines=[-]NOMBRE #Avec un - avant NOMBRE dans les deux premières syntaxes
-NOMBRE #imprime toutes les lignes de chaque [FILE]... excepté
#les NOMBRE dernières
#La dernière syntaxe est obsolète
-c [-]NOMBRE #Même chose pour les NOMBRE premiers octets. NOMBRE peut
--bytes=[-]NOMBRE #être une human readable size (voir doc)
-q
--quiet #Si plusieurs [FILE]..., n'imprime pas les headers ni
--silent #les blank lines
-v
--verbose #Imprime au contraire toujours ces derniers (défaut)
tail [FILE]... #Agit comme head, mais pour les derniers caractères ou
#lignes. A les mêmes valeurs par défaut et les mêmes
#options. Cependant :
# - n'arrête pas un FLUX
# - pour -c et -n, -NOMBRE n'est pas disponible, mais
# +NOMBRE signifie toutes les lignes (ou caractères)
# à partir de la ligne (ou caractère) numéro NOMBRE
# (inclus)
# - l'option -f et des options liées à elle sont
# disponibles :
-f #Tail effectue son action habituel, puis patiente.
--follow[="name"| #Toutes les DELAI secondes (par défaut 1 seconde), si
"descriptor"] #des lignes sont ajoutées à FILE, quelle que soit leur
#nombre et quelle que soit la valeur de -c NOMBRE ou -n
#NOMBRE, ces lignes ajoutées sont imprimées.
#--follow="descriptor" continue à tracker FILE même s'il
#change de nom
#--follow="name" au contraire checke toutes les DELAI x
#CHECK_FREQ secondes si FILE a changé de nom, auquel
#cas, une erreur et produit et tail s'interrompt.
#CHECK_FREQ est 5 par défaut
#Cas spécial : si le fichier est modifié et que :
# - des caractères sont supprimés de FILE, alors un
# message d'erreur sera imprimé, et tail continuera
# - des caractères sont modifiés sans incrémenter ni
# diminuer le nombre de caractères de FILE, alors
# rien ne se passe
# - N caractères sont ajoutés à FILE (quel que soit
# l'endroit de la modification), alors les N derniers
# caractères de FILE seront imprimés (dont les
# newlines, dont la newline finissant habituellement
# les fichiers texte)
-s NOMBRE #Change le DELAI de -f. Nombre décimal possible (virgule
--sleep-interval=NOMBRE #américaine)
--retry #Si FILE devient inaccessible, affiche le message
#d'erreur mais n'interrompt pas tail, qui continue à
#checker si un FILE est à nouveau disponible (un seul
#message d'erreur est produit)
#Utile avec --follow="name" si FILE change de nom
-F #équivalent à --follow="name" --retry
--pid=NOMBRE #Avec -f, interrompt tail lorsque le process dont le PID
#est NOMBRE s'interrompt
--max-unchanged-stats=
NOMBRE #CHECK_FREQ devient NOMBRE
EXEMPLE D'UTILISATION #Sélectionner NUM1 lignes de FILE à partir de la ligne
==> #numéro NUM2-NUM1+1 :
#head -n NUM2 FILE | tail -n NUM1
#Même chose pour les caractères avec -c