J'écris un script bash qui a besoin d'obtenir l'en-tête (10 premiers octets) d'un fichier, puis dans une autre section, je récupère tout sauf les 10 premiers octets. Ce sont des fichiers binaires et auront probablement \0
'le sable \n
est tout au long des 10 premiers octets. Il semble que la plupart des utilitaires fonctionnent avec les fichiers ASCII. Quelle est la bonne façon d'accomplir cette tâche?
Pour obtenir les 10 premiers octets, comme indiqué précédemment:
head -c 10
Pour obtenir tout sauf les 10 premiers octets (au moins avec GNU tail
):
tail -c+11
head -c 10
fait la bonne chose ici.
Vous pouvez utiliser la commande dd
pour copier un nombre arbitraire d'octets à partir d'un fichier binaire.
dd if=infile of=outfile1 bs=10 count=1
dd if=infile of=outfile2 bs=10 skip=1