En aquest tema, aprendrem sobre dues eines fonamentals per treballar amb la línia de comandes de Linux: el piping i la redirecció. Aquestes eines ens permeten manipular i processar dades de manera eficient, combinant comandes i redirigint la sortida i l'entrada de dades.
- Introducció a la Redirecció
La redirecció ens permet enviar la sortida d'una comanda a un fitxer o utilitzar un fitxer com a entrada per a una comanda. Hi ha tres tipus principals de redirecció:
1.1 Redirecció de Sortida
La redirecció de sortida s'utilitza per enviar la sortida d'una comanda a un fitxer en lloc de mostrar-la a la pantalla.
>
: Redirigeix la sortida a un fitxer (sobreescriu el fitxer si ja existeix).>>
: Redirigeix la sortida a un fitxer (afegeix al fitxer si ja existeix).
Exemple:
# Sobreescriu el fitxer output.txt amb la sortida de la comanda ls ls > output.txt # Afegeix la sortida de la comanda ls al fitxer output.txt ls >> output.txt
1.2 Redirecció d'Entrada
La redirecció d'entrada s'utilitza per llegir l'entrada d'un fitxer en lloc de des del teclat.
<
: Redirigeix l'entrada d'un fitxer.
Exemple:
1.3 Redirecció d'Errors
La redirecció d'errors s'utilitza per enviar els missatges d'error a un fitxer.
2>
: Redirigeix els errors a un fitxer (sobreescriu el fitxer si ja existeix).2>>
: Redirigeix els errors a un fitxer (afegeix al fitxer si ja existeix).
Exemple:
- Introducció al Piping
El piping ens permet utilitzar la sortida d'una comanda com a entrada per a una altra comanda. Això es fa utilitzant el caràcter |
.
Exemple:
- Exemples Pràctics
3.1 Combinació de Comandes amb Piping
Podem combinar diverses comandes utilitzant piping per realitzar tasques complexes.
Exemple:
# Llista els fitxers, filtra els que contenen "log" i compta el nombre de línies ls | grep "log" | wc -l
3.2 Redirecció de Sortida i Errors
Podem redirigir tant la sortida com els errors a fitxers diferents o al mateix fitxer.
Exemple:
# Redirigeix la sortida a output.txt i els errors a error.txt ls /nonexistent_directory > output.txt 2> error.txt # Redirigeix tant la sortida com els errors a combined.txt ls /nonexistent_directory > combined.txt 2>&1
- Exercicis Pràctics
Exercici 1
Llista tots els fitxers del directori actual que contenen la paraula "config" i guarda la sortida en un fitxer anomenat config_files.txt
.
Solució:
Exercici 2
Compta el nombre de línies en un fitxer anomenat data.txt
i guarda el resultat en un fitxer anomenat line_count.txt
.
Solució:
Exercici 3
Redirigeix la sortida de la comanda find / -name "*.log"
a un fitxer anomenat log_files.txt
i redirigeix els errors a un fitxer anomenat errors.txt
.
Solució:
- Errors Comuns i Consells
Error Comú 1: Sobreescriure Fitxers Accidentalment
És fàcil sobreescriure un fitxer accidentalment utilitzant >
. Utilitza >>
si vols afegir contingut a un fitxer existent.
Error Comú 2: No Redirigir Errors
Si no redirigeixes els errors, poden aparèixer a la pantalla i confondre't. Redirigeix els errors a un fitxer per mantenir la sortida neta.
Consell: Utilitza tee
per Veure i Guardar la Sortida
La comanda tee
permet veure la sortida a la pantalla i alhora guardar-la en un fitxer.
Exemple:
Conclusió
En aquesta secció, hem après com utilitzar la redirecció i el piping per manipular la sortida i l'entrada de comandes a la línia de comandes de Linux. Aquestes eines són fonamentals per treballar de manera eficient i flexible amb dades a Linux. Practica els exemples i exercicis per dominar aquestes tècniques i estar preparat per a tasques més avançades.
Domini de Linux: De Principiant a Avançat
Mòdul 1: Introducció a Linux
- Què és Linux?
- Història de Linux
- Distribucions de Linux
- Instal·lant Linux
- Estructura del Sistema de Fitxers de Linux
Mòdul 2: Comandes Bàsiques de Linux
- Introducció a la Línia de Comandes
- Navegant pel Sistema de Fitxers
- Operacions amb Fitxers i Directoris
- Visualització i Edició de Fitxers
- Permisos i Propietat dels Fitxers
Mòdul 3: Habilitats Avançades de la Línia de Comandes
- Ús de Comodins i Expressions Regulars
- Piping i Redirecció
- Gestió de Processos
- Programació de Tasques amb Cron
- Comandes de Xarxa
Mòdul 4: Scripting de Shell
- Introducció al Scripting de Shell
- Variables i Tipus de Dades
- Estructures de Control
- Funcions i Biblioteques
- Depuració i Gestió d'Errors
Mòdul 5: Administració del Sistema
- Gestió d'Usuaris i Grups
- Gestió de Discs
- Gestió de Paquets
- Monitorització del Sistema i Optimització del Rendiment
- Còpia de Seguretat i Restauració
Mòdul 6: Xarxes i Seguretat
- Configuració de Xarxa
- Tallafocs i Seguretat
- SSH i Accés Remot
- Sistemes de Detecció d'Intrusions
- Assegurant Sistemes Linux
Mòdul 7: Temes Avançats
- Virtualització amb Linux
- Contenidors de Linux i Docker
- Automatització amb Ansible
- Optimització del Nucli de Linux
- Alta Disponibilitat i Balanceig de Càrrega