Кіріспе

Компьютерлік файлдарды салыстыру құралы

Компьютерде, cmp – Unix және Unix-қа ұқсас операциялық жүйелердегі екі кез келген файлды салыстырып, нәтижелерін стандартты шығысқа жазатын командалық жол құралы. Әдепкі бойынша, файлдар бірдей болса, cmp ешқандай хабарлама бермейді; егер олар өзгеше болса, алғашқы айырмашылық пайда болған байт пен жол нөмірі туралы хабарлама жіберіледі. Бұл команда OS 9 қабығында да қолжетімді.

Тарих

1987 жылғы 2-ші нұсқасынан бастап X/Open Portability Guide құрамына кіреді. Ол POSIX.1 және Single Unix Specification-тің бірінші нұсқасына көшті. Алғаш рет Unix 1-ші нұсқасында пайда болды. GNU coreutils жинағындағы cmp нұсқасын Торбьорн Гранлунд және Дэвид МакКензи жазған. Бұл команда Microsoft Windows үшін UnxUtils жинағының бөлігі ретінде жеке пакет түрінде қолжетімді, ол көптеген GNU Unix сияқты утилиталардың Win32-ге түпнұсқалық порты болып табылады. Команда сонымен қатар IBM i операциялық жүйесіне де көшірілген.

Ауыстырғыштар

cmp командалық жолға қосылатын параметрлер арқылы жұмыс істей алады. cmp-тің кең таралған нұсқалары қолдайтын параметрлер:

Атауы Сипаттамасы Unix Plan 9 Inferno FreeBSD Linux IBM i b, print bytes Ерекше байттарды басып шығару. Бақылау байттарын '^' таңбасымен, ал жоғары биті орнатылған байттарды 'M ' (мета) деп белгіленген таңбамен көрсету. ✔ h Символдық сілтемелерді қабылдамау. ✔ i SKIP, initial=SKIP елемеу Кірістің бастапқы SKIP байтын жіберу. ✔ i SKIP1:SKIP2, ignore initial=SKIP1:SKIP2 FILE1 бастапқы SKIP1 байтын және FILE2 бастапқы SKIP2 байтын жіберу. ✔ l, verbose Әдеттегі стандартты шығысқа орналастырудың орнына, барлық ерекше байттардың (ондық) нөмірін және (сегіздік) мәнін шығару. Сондай-ақ, егер бір файл екіншісінен қысқа болса, EOF хабарламасын шығару. ✔ ✔ ✔ ✔ ✔ L Бірінші ерекше байттың жол нөмірін басып шығару. ✔ ✔ ✔ n LIMIT, байт=LIMIT Ең көп дегенде LIMIT байтты салыстыру. ✔ s, тыныш, үнсіз Ештеңе шығармау; тек шығу статусын беру. ✔ ✔ ✔ ✔ ✔ t Мәтіндік режим, онда файлдар мәтіндік режимде ашылады және байт бойынша салыстыру алдында жұмыс CCSID-ге аударылады. ✔ v, нұсқасы Нұсқа туралы ақпаратты шығару. ✔ x L сияқты, бірақ гексадецималдық форматта басып шығару және файлдардағы бірінші байттың индексі ретінде нөлді пайдалану. ✔ z Қалыпты файлдар үшін алдымен файл мөлшерін салыстыру және олар тең болмаса, салыстыруды тоқтату. ✔ help Көмек файлы шығару. ✔

Байт саны болып табылатын аргументтер әдетте ондық болып келеді, бірақ сегіздік үшін '0' және он алтылық үшін '0x' префиксімен жазылуы мүмкін. Байт санынан кейін осы санның еселігін көрсету үшін қосымша жазу мүмкін; мұндай жағдайда, алынып тасталған бүтін сан 1 ретінде түсініледі. Әріптің артынан 'iB' жазылса, 1024-тің дәрежелерін пайдаланып еселік көрсетіледі. Әріптің артынан 'B' жазылса, 1000-ның дәрежелері пайдаланылады. Мысалы, 'n 4M' және 'n 4MiB' 'n 4194304' дегенмен тең, ал 'n 4MB' 'n 4000000' дегенмен тең. Бұл жазу ондық еселіктерге арналған SI префикстерімен және бинарлық еселіктерге арналған IEC 60027 2 префикстерімен үйлесімді.