Skip to content

Bestanden vergelijken met het ‘cmp’-hulpprogramma in Linux

20 de juli de 2021
10165181 56b0950f5f9b58b7d02430cb

De cmp hulpprogramma vergelijkt twee bestanden van elk type en schrijft de resultaten naar de standaarduitvoer. Standaard, cmp is stil als de bestanden hetzelfde zijn; als ze verschillen, wordt het byte- en regelnummer vermeld waarop het eerste verschil is opgetreden.

Hoe cmp uit te voeren

Probeer een paar bestanden te vergelijken met iets dat lijkt op: cmp file1.txt file2.txt

U zou eventuele verschillen op de volgende regel moeten zien. Verwacht niets te gedetailleerd. Cmp vergelijkt bytes, maar dat is genoeg om je te laten weten of er iets anders is. Bytes en regels zijn genummerd beginnend met één.

Linux cmp-opdracht uitgebreid

Als u bekend bent met bytes en u een meer gedetailleerde uitsplitsing wilt, kunt u de schakeloptie ‘-l’ gebruiken om de uitgebreide uitvoer te krijgen: cmp -l file1.txt file2.txt

Voor een volledige uitsplitsing kunt u onderstaande handleiding raadplegen.

Korte inhoud

cmp [ –l | -s ] bestand1 bestand2 [skip1 [skip2 ] ]

Schakelaars

De volgende schakelaars breiden de functionaliteit van de opdracht uit:

-l

Druk het bytenummer (decimaal) en de verschillende bytewaarden (octaal) voor elk verschil af.

-s

Druk niets af voor verschillende bestanden; alleen terugkeer exit-status.

Argumenten overslaan

De optionele argumenten overslaan1 en overslaan2 zijn de byte-offsets vanaf het begin van bestand1 en bestand2 respectievelijk, waar de vergelijking zal beginnen. De offset is standaard decimaal, maar kan worden uitgedrukt als een hexadecimale of octale waarde door er een voorloop aan te geven 0x of 0.

Retourwaarden

De cmp hulpprogramma wordt afgesloten met een van de volgende waarden:

0—De bestanden zijn identiek.

1—De bestanden zijn verschillend; deze waarde omvat het geval waarin het ene bestand identiek is aan het eerste deel van het andere. In het laatste geval, als de –zo optie is niet opgegeven, cmp schrijft naar standaarduitvoer dat EOF werd bereikt in het kortere bestand (voordat er verschillen werden gevonden).

> 1—Er is een fout opgetreden.

Gebruiksopmerkingen

Het diff(1) commando voert een gelijkaardige functie uit. De cmp utility zal naar verwachting St -p1003.2 compatibel zijn. Omdat distributies en kernel-releaseniveaus verschillen, gebruikt u de Mens commando (% Mens) om te zien hoe een specifieke opdracht op uw specifieke computer wordt gebruikt.