Bash Pagina 81
Sari la navigare
Sari la căutare
Exercițiul 1 - Schimbarea extensiei fișierelor
Scenariu
Creați un script ce schimbă extensia veche a fișierelor dintr-un folder cu o nouă extensie specificată ca argument:
./move.sh oldext newext
Scriptul
#!/bin/bash
# Verificăm numărul de argumente
if [ "$#" -ne 2 ]; then
echo "Usage: $0 oldext newext"
exit 1
fi
oldext="$1"
newext="$2"
# Schimbăm extensia pentru fiecare fișier cu extensia veche
for file in *."$oldext"; do
# Verificăm dacă există fișiere cu extensia veche
if [ -e "$file" ]; then
mv -- "$file" "${file%.$oldext}.$newext"
echo "Am redenumit $file în ${file%.$oldext}.$newext"
else
echo "Nu am găsit fișiere cu extensia $oldext."
fi
done
Explicație
- Verificarea argumentelor:
Scriptul verifică dacă numărul de argumente este exact 2. Dacă nu, afișează un mesaj de utilizare și iese.
- Iterația fișierelor:
Folosește o buclă for pentru a itera prin toate fișierele care au extensia specificată.
- Verifică dacă fișierul există cu -e.
- Schimbarea extensiei:
Folosește comanda mv pentru a redenumi fișierul, eliminând extensia veche și adăugând noua extensie.
- Feedback pentru utilizator:
Afișează un mesaj care confirmă redenumirea fiecărui fișier sau un mesaj de eroare dacă nu există fișiere cu extensia veche.
Concluzie
Acest script este util pentru gestionarea rapidă a fișierelor dintr-un director, permițând schimbarea extensiilor fără a modifica conținutul fișierelor.