Gym
lesson

Informacije o fajlovima

Cilj lekcije: Naučiti kako da saznaš tip fajla, prebrojiš linije i reči, pročitaš detaljan metapodatke i proveris koliko prostora zauzimaju fajlovi i direktorijumi.


Komanda file — tip fajla

Na Linux-u, ekstenzija fajla (.txt, .jpg, .sh) ne mora da odgovara stvarnom tipu fajla. Neko može da preimenuje sliku u .txt ili skriptu u .exe. Komanda file analizira sadržaj fajla i govori ti šta stvarno jeste.

Osnovna upotreba

file ime_fajla

Primeri

$ file dokument.txt
dokument.txt: ASCII text

$ file slika.jpg
slika.jpg: JPEG image data, JFIF standard 1.01

$ file skript.sh
skript.sh: Bourne-Again shell script, ASCII text executable

$ file program
program: ELF 64-bit LSB executable, x86-64

$ file arhiva.tar.gz
arhiva.tar.gz: gzip compressed data

file cita magic bytes — prvih nekoliko bajtova svakog fajla koji jedinstveno identifikuju format. JPEG uvek pocinje sa FF D8 FF, ZIP sa 50 4B 03 04, i tako dalje.

Provjera više fajlova odjednom

file *.txt
file /etc/hosts /etc/passwd

Kada je file korisno?

  • Kada ne znaš šta je neki nepoznati fajl
  • Kada sumnjičeš da je fajl preimenovan da sakrije pravi tip (važno u bezbednosti!)
  • Kada skripta ne radi i ne znaš da li je možda Windows format sa \r krajevima linija

Komanda wc — brojanje sadržaja

wc (od word count — broj reči) broji linije, reči i karaktere u fajlovima.

Osnovna upotreba

wc fajl.txt

Izlaz prikazuje tri broja:

  42  318  1876 fajl.txt

Redosled: linije, reči, bajtovi (karakteri), pa ime fajla.

Opcije

Opcija Šta broji
-l Samo linije (lines)
-w Samo reči (words)
-c Samo bajtove (characters/bytes)
-m Karaktere (uzima u obzir UTF-8)
# Broj linija u fajlu
wc -l server.log

# Broj reči u dokumentu
wc -w esej.txt

# Broj karaktera
wc -c config.txt

Praktični primeri

# Koliko linija ima log fajl?
$ wc -l /var/log/syslog
8432 /var/log/syslog

# Koliko korisnika je definisano u sistemu?
$ wc -l /etc/passwd
42 /etc/passwd

# Koliko bajtova zauzima fajl?
$ wc -c /bin/ls
142144 /bin/ls

wc sa više fajlova

$ wc -l *.txt
  15 prvi.txt
  23 drugi.txt
  41 treci.txt
  79 total

Automatski sabira i prikazuje ukupan broj.


Komanda stat — detaljni metapodaci

stat prikazuje sve metapodatke o fajlu: veličinu, dozvole, vlasnika, datume i više.

Osnovna upotreba

stat ime_fajla

Primer izlaza

$ stat /etc/hosts
  File: /etc/hosts
  Size: 220             Blocks: 8          IO Block: 4096   regular file
Device: 801h/2049d      Inode: 131073      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2026-04-13 09:15:42.000000000 +0100
Modify: 2026-03-20 14:30:11.000000000 +0100
Change: 2026-03-20 14:30:11.000000000 +0100
 Birth: -

Šta sve stat prikazuje?

  • File — puno ime fajla
  • Size — veličina u bajtovima
  • Blocks — broj blokova na disku
  • IO Block — veličina bloka fajl sistema
  • Inode — jedinstveni identifikator fajla u fajl sistemu
  • Links — broj hard linkova
  • Access (dozvole) — ko sme da cita, pise, izvrsava
  • Uid / Gid — vlasnik fajla (korisnik i grupa)
  • Access time — kada je fajl poslednji put čitan
  • Modify time — kada je sadržaj poslednji put izmenjen
  • Change time — kada su metapodaci poslednji put promenjeni

Razlika između Modify i Change: Modify se menja kada se menja sadržaj fajla. Change se menja i kada se menjaju samo metapodaci (npr. dozvole) bez promene sadržaja.

Kada je stat korisno?

  • Provjera datuma poslednje izmene fajla
  • Provjera dozvola bez ls -l
  • Istraživanje koji korisnik poseduje fajl
  • Forenzička analiza — kada je fajl poslednji put pristupan

Komanda du — zauzeće diska

du (od disk usage — zauzeće diska) prikazuje koliko prostora zauzimaju fajlovi i direktorijumi.

Osnovna upotreba

du fajl.txt
du direktorijum/

Bez opcija prikazuje veličinu u blokovima (512 bajtova ili 1024 bajta, zavisno od sistema) — teško za čitanje.

Opcija -h — human-readable

Najkorisnija opcija! Prikazuje veličine u KB, MB, GB:

$ du -h slike/
4.0K    slike/ikone
156M    slike/fotografije
3.2G    slike/video
3.4G    slike/

Opcija -s — samo ukupan zbir

Kada ne trebaš detalje po poddirektorijumima:

$ du -sh /home/student
1.2G    /home/student

Kombinovanje opcija

# Velicina svakog direktorijuma u /var
du -h --max-depth=1 /var

Praktični primeri

# Koliko zauzima moj home direktorijum?
du -sh ~

# Koji poddirektorijumi su najveći?
du -h --max-depth=1 ~

# Veličina određenog fajla
du -h server.log

Pregled svih komandi

Komanda Šta prikazuje
file fajl Tip fajla (tekst, slika, binarni...)
wc fajl Linije, reči i bajtovi
wc -l fajl Samo broj linija
wc -w fajl Samo broj reči
wc -c fajl Samo broj bajtova
stat fajl Svi metapodaci (dozvole, vlasnik, datumi)
du -h fajl Zauzeće diska u čitljivom formatu
du -sh dir/ Ukupna veličina direktorijuma

Rezime

  • file otkriva pravi tip fajla analiziranjem sadržaja — ne oslanja se na ekstenziju
  • wc broji linije (-l), reči (-w) i bajtove (-c) unutar fajla
  • stat prikazuje sve metapodatke fajla: veličinu, dozvole, vlasnika i datume pristupa/izmene
  • du -h prikazuje zauzeće diska u formatu pogodnom za čitanje
  • du -sh daje ukupnu veličinu direktorijuma jednim brojem

U sledećoj lekciji primeniš sve ovo znanje u praktičnoj vežbi — istraživanju pravog log fajla!