En aquest tema, explorarem operacions avançades amb fitxers en Bash. Aquestes operacions són essencials per a la gestió eficient de fitxers i directoris en scripts més complexos. Aprendrem a manipular fitxers de manera més sofisticada, incloent la compressió, descompressió, enllaços simbòlics, i més.
Continguts
Compressió i Descompressió de Fitxers
Comprimir Fitxers
La compressió de fitxers és una tècnica per reduir la mida dels fitxers per a l'emmagatzematge o la transmissió. Bash proporciona diverses eines per a la compressió, com gzip
, bzip2
, i zip
.
Exemple amb gzip
:
Descomprimir Fitxers
Per descomprimir fitxers, utilitzem les mateixes eines amb opcions diferents.
Exemple amb gzip
:
Comprimir i Descomprimir Directories
Per comprimir i descomprimir directoris, utilitzem tar
combinat amb gzip
o bzip2
.
Exemple amb tar
i gzip
:
# Comprimir un directori tar -czvf directori.tar.gz directori/ # Descomprimir un directori tar -xzvf directori.tar.gz
Enllaços Simbòlics i Durs
Enllaços Simbòlics
Un enllaç simbòlic és un fitxer que apunta a un altre fitxer o directori. Es crea amb la comanda ln -s
.
Exemple:
Enllaços Durs
Un enllaç dur és una referència directa a les dades d'un fitxer en el sistema de fitxers. Es crea amb la comanda ln
sense l'opció -s
.
Exemple:
Trobar i Manipular Fitxers
Trobar Fitxers
La comanda find
és molt poderosa per buscar fitxers basant-se en diversos criteris.
Exemple:
Manipular Fitxers Trobats
Podem combinar find
amb altres comandes per manipular els fitxers trobats.
Exemple:
# Trobar i eliminar tots els fitxers .log més antics de 7 dies find . -name "*.log" -type f -mtime +7 -exec rm {} \;
Comparació de Fitxers
Comanda diff
La comanda diff
es fa servir per comparar el contingut de dos fitxers línia per línia.
Exemple:
Comanda cmp
La comanda cmp
compara dos fitxers byte per byte.
Exemple:
Exercicis Pràctics
Exercici 1: Comprimir i Descomprimir Fitxers
- Comprimeix el fitxer
dades.txt
utilitzantgzip
. - Descomprimeix el fitxer
dades.txt.gz
.
Solució:
Exercici 2: Crear Enllaços Simbòlics i Durs
- Crea un enllaç simbòlic anomenat
enllac_simbòlic.txt
que apunti adades.txt
. - Crea un enllaç dur anomenat
enllac_dur.txt
que apunti adades.txt
.
Solució:
Exercici 3: Trobar i Eliminar Fitxers
- Troba tots els fitxers
.tmp
en el directori actual i subdirectoris. - Elimina tots els fitxers
.tmp
més antics de 3 dies.
Solució:
Exercici 4: Comparar Fitxers
- Compara els fitxers
dades1.txt
idades2.txt
utilitzantdiff
. - Compara els fitxers
dades1.txt
idades2.txt
utilitzantcmp
.
Solució:
Conclusió
En aquesta secció, hem après a realitzar operacions avançades amb fitxers en Bash, incloent la compressió i descompressió, la creació d'enllaços simbòlics i durs, la cerca i manipulació de fitxers, i la comparació de fitxers. Aquestes habilitats són fonamentals per a la gestió eficient de fitxers en scripts més complexos. A la següent secció, explorarem la gestió de processos en Bash.
Curs de Programació en Bash
Mòdul 1: Introducció a Bash
- Què és Bash?
- Configuració del teu Entorn
- Navegació Bàsica per la Línia de Comandes
- Entenent la Shell
Mòdul 2: Comandes Bàsiques de Bash
- Operacions amb Fitxers i Directoris
- Comandes de Processament de Text
- Permisos i Propietat de Fitxers
- Redirecció i Piping
Mòdul 3: Conceptes Bàsics de Scripting
Mòdul 4: Scripting Intermedi
Mòdul 5: Tècniques Avançades de Scripting
- Operacions Avançades amb Fitxers
- Gestió de Processos
- Gestió d'Errors i Depuració
- Expressions Regulars
Mòdul 6: Treballant amb Eines Externes
Mòdul 7: Automatització i Programació
- Treballs Cron
- Automatització de Tasques
- Scripts de Còpia de Seguretat i Restauració
- Monitorització i Registre
Mòdul 8: Millors Pràctiques i Optimització
- Escriure Codi Llegible
- Optimització de Scripts en Bash
- Consideracions de Seguretat
- Control de Versions amb Git