Fișiere și directoare
Lectură estimată: 3 minute
Estimare pentru text, la un ritm de 180 de cuvinte pe minut. Timpul pentru analizarea codului, exerciții și proiecte se adaugă separat și depinde de ritmul tău.
Operațiile pe fișiere și directoare — copiere, mutare, ștergere, căutare — sunt pâinea zilnică. O regulă domină toată lecția: `rm` nu are coș de gunoi. Ce ștergi, dispare. De aceea verifici de două ori orice comandă distructivă.
Creare, copiere, mutare
mkdir proiect # un director
mkdir -p a/b/c # și directoarele intermediare
touch fisier.txt # fișier gol
cp sursa.txt dest.txt # copiere
cp -r folder1 folder2 # recursiv (directoare)
mv vechi.txt nou.txt # redenumire sau mutare
mv fisier.txt ~/documente/Ștergere (cu grijă)
rm fisier.txt # șterge un fișier — DEFINITIV
rm -r folder # șterge un director și tot ce conține
rm -i *.log # cere confirmare pentru fiecare
# NICIODATĂ rm -rf pe o cale de care nu ești 100% sigurVizualizare conținut
cat fisier.txt # tot
less fisier.txt # paginat (navigare, /căutare, q ieșire)
head -n 20 fisier # primele 20 de rânduri
tail -n 50 fisier # ultimele 50
tail -f log.txt # urmărește ce se adaugă, liveCăutare
find . -name "*.php" # fișiere după nume
find /var/log -mtime -1 # modificate în ultima zi
grep "eroare" storage/logs/*.log # text în fișiere
grep -rn "TODO" src/ # recursiv, cu numărul linieiCurățenie sigură într-un folder de log-uri
cd /var/log/aplicatie ls -lah # vezi ce e și cât ocupă find . -name "*.log" -mtime +30 # întâi LISTEAZĂ ce ai șterge find . -name "*.log" -mtime +30 -delete # abia apoi șterge
Exercițiu
Creează un director de test cu câteva fișiere. Copiază unul, redenumește altul, mută unul într-un subdirector. Folosește `find` ca să listezi doar fișierele `.txt`, apoi `grep` ca să găsești un cuvânt în ele. NU exersa `rm -rf`.
Greșeli frecvente
- `rm -rf` pe o cale greșită (mai ales cu variabile: `rm -rf $DIR/` când `$DIR` e gol → `rm -rf /`).
- Nu listezi întâi ce ar șterge un `find ... -delete`.
- Folosești `cat` pe un fișier de 2 GB în loc de `less` sau `tail`.
- Cauți cu `find` fără `-name` și primești tot.
De reținut
- mkdir -p, cp -r, mv, touch pentru operații de bază.
- rm e definitiv; `-i` cere confirmare, verifică mereu calea.
- less / head / tail pentru fișiere mari; `tail -f` pentru log-uri live.
- find pentru fișiere, grep pentru conținut; listează înainte să ștergi.
Pe scurt
Operațiile pe fișiere sunt simple, dar `rm` nu iartă. Listează înainte de a șterge, folosește Tab, și tratează căile cu variabile cu suspiciune.
Căi relative, absolute și fișiere ascunse
Calea relativă depinde de directorul curent, iar cea absolută pornește de la rădăcină. Numele care încep cu punct sunt ascunse de afișarea obișnuită, dar nu sunt protejate prin acest fapt. Înainte de copiere, verifică sursa și destinația. Ghilimelele păstrează un nume cu spații ca un singur argument. Nu construi operații recursive pe căi calculate fără a confirma domeniul laboratorului.
Exemplu de lucru
cd ~/laborator-linux
mkdir -p documente copii
printf 'demo
' > 'documente/nota de lucru.txt'
cp -- 'documente/nota de lucru.txt' 'copii/nota de lucru.txt'
ls -la documente copii
realpath 'copii/nota de lucru.txt'
# Citește ambele fișiere și compară înainte de alte operații.Interpretarea rezultatului
cp creează o copie, iar schimbarea ei nu ar trebui să modifice originalul obișnuit. Linkurile simbolice au alt comportament și trebuie identificate separat. Nu presupune că un fișier .env este sigur doar fiindcă nu apare la ls fără -a.
Exercițiu de consolidare
Creează un nume cu spații și diacritice și verifică citirea lui folosind ghilimele.
Aplicație practică
Sarcina
Creează un director laborator cu două fișiere și inspectează-l.
Rezolvare orientativă și verificare
Compară căile relative cu cele absolute și folosește ghilimele pentru spații.
Greșeală de evitat
O cale relativă depinde de directorul curent.
Documentație și surse
- Ubuntu Server documentation — Canonical
Ți-a plăcut lecția? Continuă cursul complet
Ai citit o lecție gratuită. Celelalte lecții, aplicațiile practice și materialele se deblochează odată cu cursul.
79 lei
Plată unică, acces pe viață la toate cele 6 lecții.
Vezi ce conține cursul →