NOM
xcks - calcule et vérifie des fichiers de sommes aux formats XCKS et
ZXCKS
SYNOPSIS
- xcks [options]
- xcks [options]
<fichier_(Z)XCKS>
- xcks --verify
<fichier_(Z)XCKS> [options]
- xcks --create
<fichier_(Z)XCKS> [options]
[fichier|répertoire]…
- xcks --list-profiles
[–wordiness <arg>]
- xcks
[--help|--version]
DESCRIPTION
xcks est un outil qui crée ou vérifie des sommes de
contrôle de fichiers.
xcks lit et stocke les sommes de contrôle calculées
dans des fichiers de sommes de contrôle au format XCKS et ZXCKS.
- Lit un fichier de sommes de contrôle (Z)XCKS depuis l’entrée
standard (stdin), et vérifie les fichiers présents dans le
fichier de sommes de contrôle (Z)XCKS lu ;
- Lit un fichier de sommes de contrôle (Z)XCKS depuis
<fichier_(Z)XCKS> ou depuis l’entrée standard
(stdin) si <fichier_(Z)XCKS> vaut -, et
vérifie les fichiers présents dans le fichier de sommes de contrôle
(Z)XCKS lu.
- Lit un fichier de sommes de contrôle (Z)XCKS depuis
<fichier_(Z)XCKS> ou depuis l’entrée standard
(stdin) si <fichier_(Z)XCKS> vaut -, et
vérifie les fichiers présents dans le fichier de sommes de contrôle
(Z)XCKS lu.
- Calcule les sommes de contrôle des fichiers ou répertoires spécifiés
et les stocke dans un fichier de sommes de contrôle (Z)XCKS ou la sortie
standard (stdout) si <fichier_(Z)XCKS> vaut
-.
- Liste les profils connus (liste d’algorithmes de sommes de
contrôle).
- Affiche l’aide ou la version du programme.
OPTIONS
boolean_arg sont les arguments pour les options qui
attendent une valeur booléenne. Si ces options sont explicitement
passées sur la ligne de commande, elles valent implicitement
on.
Les valeurs valides pour boolean_arg sont on,
true , yes (pour vrai) et off,
false, no (pour faux).
L’élément -- (tiret tiret) peut être utilisé dans la ligne
de commande pour indiquer à xcks d’arrêter la détection
des options de commande à partir de ce point.
Options générales
- -h, --help
-
Affiche l’aide.
- -V, --version
-
Affiche la version.
- -w,–wordiness arg
-
Niveau de verbosité : mute, quiet,
progress, values, chatterbox
- mute: aucune sortie.
- quiet: affiche uniquement les erreurs.
- progress: affiche la progression globale de la vérification
ou du calul.
- values: affiche les valeurs calculées.
- chatterbox: affiche tous les messages.
- -T, --threads arg
-
Nombre de threads à utiliser pour calculer les sommes de
contrôle (0 = nombre de cœurs de l’ordinateur).
- -X, --xcks
-
Force l’utilisation d’un fichier de sommes XCKS quelque soit son
extension.
Ne peut pas être présente avec l’option --zxcks.
- -Z, --zxcks
-
Force l’utilisation d’un fichier de sommes ZXCKS quelque soit son
extension.
Ne peut pas être présente avec l’option --xcks.
- -b, --basedir arg
-
Remplace le répertoire de base du fichier de sommes (Z)XCKS par
arg.
Création d’un
fichier de sommes de contrôle (Z)XCKS
- -c, --create arg
-
Crée un fichier de sommes de contrôle (Z)XCKS vers un fichier ou vers
la sortie standard (-).
Vaut - par défaut.
Sans l’option --basedir les chemins des fichiers lus
seront écrits dans le fichier de sommes de contrôle (Z)XCKS comme
relatifs au chemin de arg (ou au chemin du répertoire courant
si arg vaut -).
- -r, --xcks-version
arg
-
Définit la version de la spécification de fichier XCKS à utiliser
pour le fichier de sommes de contrôle (Z)XCKS à créer.
Dans cette version de xcks, la seule version connue
est la version 1.0.0.
Vaut par défaut la dernière version connue de la spécification de
fichier XCKS.
- -z, --compression
arg
-
Définit le niveau de compression (pour les fichiers de sommes de
contrôle ZXCKS uniquement).
Les valeurs valides sont les entiers compris entre 1
(compression plus rapide) et 9 (meilleure compression).
- -a, --algorithms arg
-
Définit la liste des algorithmes à calculer.
arg est une liste de noms d’algorithmes séparés par une
virgule (,) et un ou plusieurs espaces.
Ne peut pas être présente avec l’option
--profile.
- -p, --profile arg
-
Définit un profil d’algorithmes à calculer.
Les profils sont stockés dans le fichier de configuration de
xcks (se reporter à la section FICHIERS).
Ne peut pas être présente avec l’option
--algorithms.
- --write-file-sizes boolean_arg
-
Écrit la taille des fichiers dans le fichier de sommes de contrôle
(Z)XCKS.
- --write-file-date boolean_arg
-
Écrit la dernière date/heure de modification des fichiers dans le
fichier de sommes de contrôle (Z)XCKS.
- --abort-on-first-error boolean_arg
-
S’arrête dès la première error non-fatale (par exemple un fichier qui ne
peut pas être lu).
- -O, --overwrite
boolean_arg
-
Indique à xcks d’écraser le fichier de sommes de
contrôle spécifié dans l’option --create s’il ne se
termine pas par .xcks ou .zxcks, ou s’il n’est pas la
sortie standard (-).
Vérification
d’un fichier de sommes de contrôle (Z)XCKS
- -v, --verify arg
-
Vérifie un fichier de sommes de contrôle (Z)XCKS depuis un fichier ou
l’entrée standard (-).
Sans l’option --basedir les chemins des fichiers lus
seront relatifs au chemin de arg (ou au chemin du répertoire
courant si arg vaut -).
- --read-before boolean_arg
-
Lit le fichier de sommes de contrôle (Z)XCKS avant de vérifier les
sommes de contrôle.
Le comportement par défaut est de vérfier les fichiers au fur à
mesure qu’ils sont lus depuis le fichier de sommes de contrôle
(Z)XCKS.
Profils
- --list-profiles
-
Liste les profils connus (liste d’algorithmes de sommes de
contrôle).
Les profils sont stockés dans le fichier de configuration de
xcks (se reporter à la section FICHIERS).
Si l’option --wordiness est définie à
values ou plus, la liste des algorithmes valides par version de
specifiation XCKS est également affichée.
Si l’option --wordiness est définie à
chatterbox, la liste des algorithmes connus avec leurs noms
alternatifs est également affichée.
ÉTAT DE FIN D’EXÉCUTION
0 |
Si pas d’erreurs. |
1 |
Sur une ligne de commande invalide. |
2 |
Sur une erreur lors de la lecture du
fichier de sommes de contrôle (Z)XCKS. |
3 |
Sur une erreur lors de la vérification de
fichiers. |
6 |
Sur une erreur lors de l’écriture du
fichier de sommes de contrôle (Z)XCKS. |
7 |
Sur une erreur lors du calcul de sommes de
contrôle. |
FICHIERS
xcks utilise deux fichiers de configuration pour
définir certains paramètres par défaut : un global et un local (par
utilisateur). Ces deux fichiers permettent de spécifier les mêmes
ensembles d’options.
S’il est trouvé, le fichier global est d’abord lu, puis le fichier
local est lu (s’il est trouvé).
La priorité pour définir les options est (de la plus basse à la plus
élévée):
- Le fichier de configuration global ;
- Le fichier de configuration local (par utilisateur) ;
- La ligne de commande.
Un exemple de fichier de configuration peut être trouvé dans
/usr/share/doc/xcks/xcksrc.sample (changer
/usr avec le préfixe de l’installation de
xcks).
Systèmes Unix
Fichier de configuration
global
- /etc/xcksrc
-
Emplacement par défaut du fichier de configuration global.
Fichier de
configuration local (par utilisateur)
Le premier fichier trouvé dans l’ordre suivant :
- Le fichier désigné par la variable d’environnement
XCKSRC ;
- $XDG_CONFIG_HOME/xcksrc ;
- $HOME/.config/xcksrc ;
- $HOME/.xcksrc.
Systèmes Windows
Fichier de configuration
global
- %ALLUSERSPROFILE%\xcks\etc\xcks.ini
-
Emplacement par défaut du fichier de configuration global
(%ALLUSERSPROFILE% est également désigné par
%ProgramData% ou
%SystemDrive%\ProgramData).
Fichier de
configuration local (par utilisateur)
Le premier fichier trouvé dans l’ordre suivant :
- Le fichier désigné par la variable d’environnement
XCKSRC ;
- %APPDATA%\xcks\xcks.ini (%APPDATA%
est également désigné par
%USERPROFILE%\AppData\Roaming) ;
- <chemin de xcks.exe>\xcks.ini
ENVIRONNEMENT
- XCKSRC
-
Le chemin complet du fichier de configuration local (par utilisateur).
BOGUES
La version actuelle de xcks ne prend pas en charge
la totalité du standard ISO 8601 de date/heure. Elle lit et écrit des
dates/heures locales sans support des fuseaux horaires.
EXEMPLES
- Vérifie des sommes de contrôle depuis un fichier XCKS :
-
xcks toto.xcks
- Vérifie des sommes de contrôle depuis un flux ZXCKS obtenu depuis la
sortie d’une autre commande :
-
cat toto.zxcks > xcks -Z
- Vérifie des sommes de contrôle depuis un flux XCKS obtenu depuis la
sortie d’une autre commande :
-
zcat toto.zxcks > xcks
- Vérifie des sommes de contrôle depuis un fichier ZXCKS et change le
répertoire de base du fichier de sommes de contrôle pour le répertoire
courant (lit entièrement le fichier ZXCKS avant de démarrer la
vérification des fichiers):
-
xcks -b . --read-before -v sums/toto.zxcks
- Crée un flux XCKS vers la sortie standard avec les sommes de
contrôle CRC-32 et SHA-1 de ‘toto.txt’ :
-
xcks -c - -a "CRC-32, SHA-1" toto.txt | tee toto.xcks
- Crée un flux ZXCKS vers la sortie standard avec les sommes de
contrôle MD5 et Whirlpool de ‘toto.txt’ :
-
xcks -c -Z -a "MD5, Whirlpool" toto.txt | zcat
- Crée un fichier XCKS avec les sommes de contrôle BLAKE3 et CRC-64 de
‘joker.c’, ‘batman.o’ et ‘pangolin.bin’ en changeant le répertoire de
base du fichier XCKS pour le répertoire courant :
-
xcks -c sums/toto.xcks -a "BLAKE3,CRC-64" -b . joker.c batman.o
pangolin.bin
- Crée un fichier ZXCKS avec le profil ‘Modern’ pour les sommes de
contrôle de ‘poison_ivy.c’, ‘harley_quinn.c’ et ‘catwoman.c’ (en faisant
l’hypothèse que le profil ‘Modern’ existe dans un fichier de
configuration de xcks) :
-
xcks -c sums/toto.zxcks -p "Modern" poison_ivy.c
harley_quinn.c catwoman.c
Remarque : dans le fichier ZXCKS créé, les chemins de ‘poison_ivy.c’,
‘harley_quinn.c’ et ‘catwoman.c’ seront ‘../poison_ivy.c’,
‘../harley_quinn.c’ et ‘../catwoman.c’.
- Crée un fichier XCKS avec les sommes de contrôle SHA3-512 de
‘d'artagnan.txt’, ‘athos.txt’, ‘porthos.txt’, ‘aramis.txt’ et tous les
fichiers du répertoire (et de ses sous-répertoires) ‘agents de
richelieu’ :
-
xcks -c mousquetaires.xcks -a SHA3-512 "d'artagnan.txt"
athos.txt porthos.txt aramis.txt "agents de richelieu”
- Crée un fichier XCKS avec la somme de contrôle CRC-32 de ‘-toto.txt’
:
-
xcks -c toto.xcks -a CRC-32 -- -toto.txt
VOIR AUSSI
Les outils Coreutils du projet GNU md5sum(1),
sha1sum(1), sha224sum(1),
sha256sum(1), sha384sum(1),
sha512sum(1)
cksfv(1)