Како да се утврди типот на датотеката на датотеката со користење на Linux

Повеќето луѓе го гледаат продолжувањето на датотеката, а потоа го погодат типот на датотека од таа екстензија. На пример, кога ќе видите датотека со продолжување на gif, jpg, bmp или png, ќе размислите за датотеката со слика и кога ќе видите датотека со продолжување на zip, претпоставувате дека датотеката е компресирана со помош на алатка за компресирање со zip .

Всушност, датотеката може да има едно проширување, но да биде нешто сосема различно и ако датотеката нема екстензијата, како може да го одреди типот на датотеката?

Во Linux можете да го дознаете вистинскиот тип на датотека користејќи команда за датотеки.

Како функционира датотеката

Според документацијата, командата за датотеки извршува три групи на тестови против датотека:

Првиот сет од тестови за да се врати валиден одговор предизвикува типот на датотеката да се отпечати.

Тестирањето на датотечниот систем го испитува враќањето од системскиот повик на системот. Програмата проверува дали датотеката е празна и дали е специјална датотека. Ако типот на датотека се наоѓа во датотеката за заглавието на системот, таа ќе се врати како валиден тип на датотека.

Магичните тестови ја проверуваат содржината на датотеката и конкретно неколку бајти на почетокот кои помагаат да се одреди типот на датотеката. Постојат различни датотеки кои се користат за да се совпаднат датотеката со неговиот тип на датотека и тие се чуваат во / etc / magic, / usr / share / misc / magic.mgc, / usr / share / misc / magic. Можете да ги пребришете овие датотеки со ставање на датотека во вашата домашна папка наречена $ HOME / .magic.mgc или $ HOME / .magic.

Конечните тестови се јазични тестови. Датотеката е проверена дали е текстуална датотека. Со тестирање на првите неколку бајти од датотека можете да заклучите дали е ASCII, UTF-8, UTF-16 или во друг формат кој ја одредува датотеката како текстуална датотека. Откако ќе се прикаже сетот на знаци, датотеката се тестира на различни јазици. На пример е датотеката ac програма.

Ако ниту еден од тестовите не работи, излезот е едноставно податоци.

Како да ја користите командата за датотеки

Командата на датотеката може да се користи на следниов начин:

датотека името на датотеката

На пример замислете дека имате датотека наречена file1 ќе ја извршите следната команда:

file1

Излезот ќе биде вака:

file1: PNG податоци за слика, 640 x 341, 8-битна / боја RGB, не-испреплетени

Прикажаниот излез одредува датотеката1 да биде датотека со слика или поточно преносна мрежна графичка (PNG) датотека.

Различни типови на датотеки произведуваат различни резултати како што следува:

Прилагодете го излезот од командата за датотеки

По дифолт, командата за датотека го дава името на датотеката, а потоа сите детали над датотеката. Ако сакате само деталите без повторување на името на датотеката, користете го следниот прекинувач:

датотека-b датотека1

Излезот ќе биде вака:

PNG податоци за слика, 640 x 341, 8-bit / color RGB, не-испреплетени

Можете исто така да го промените разделувачот помеѓу името на датотеката и типот.

По дифолт, раздвојувачот е дебело црево (:), но можете да го промените на нешто што ви се допаѓа, како што е симболот на цевката, на следниов начин:

датотека -F '|' file1

Излезот сега ќе биде вака:

file1 | PNG податоци за слика, 640 x 341, 8-bit / color RGB, не-испреплетени

Ракување со повеќе датотеки

Стандардно, ќе ја користите командата за датотеки против една датотека. Меѓутоа можете да наведете име на датотека кој содржи листа на датотеки што треба да се обработуваат од командата на датотеката:

Како пример отворете датотека наречена testfiles користејќи го нано уредувачот и додајте ги следните редови:

Зачувајте ја датотеката и стартувајте ја следнава команда:

file -f testfiles

Излезот ќе биде вака:

/ etc / passwd: ASCII текст
/etc/pam.conf: ASCII текст
/ etc / opt: директориум

Компресирани датотеки

Стандардно, кога ја извршувате командата за датотека против компресирана датотека, ќе видите излез нешто слично:

file.zip: податоци од ZIP архиви, барем V2.0 за да се извлече

Додека ова ви кажува дека датотеката е архива датотека што навистина не ја знаете содржината на датотеката. Можете да погледнете во внатрешноста на zip датотеката за да ги видите типовите на датотеки на датотеките во компресираната датотека.

Следната команда ја извршува командата за датотеки против датотеките внатре во ZIP-датотека:

датотека -z име на датотека

Излезот сега ќе ги прикаже типовите на датотеки во архивата.

Резиме

Во принцип, повеќето луѓе едноставно едноставно ќе ја користат командата за датотеки за да го најдат основниот тип на датотека, но за да дознаат повеќе за сите можности кои командата за датотеки ги нуди, внесете го следново во терминалниот прозорец:

човек датотека