En GNU / Linux hi ha multitud d'eines que ja vénen preinstal·lades amb el sistema i que no tots fan servir. Algunes d'elles són certament desconegudes, en canvi, podrien fer moltes coses per facilitar el nostre treball diari. Avui et presento a la comanda set, No és una utilitat rara, de fet és ben coneguda. Però potser no coneixies tot el que pot fer aquest editor de flux (D'aquí el seu nom Stream Editor). Un potent programa heretat d'Unix.
set pot acceptar com a entrada un fitxer, el llegirà i modificarà línia a línia d'acord a l'ordre donada. El resultat serà mostrat per la sortida estàndard, és a dir, per la pantalla en aquest cas. Així permet manipular fluxos de dades per buscar, tallar, inserir o reempleazar línies de text fent ús d'expressions regulars. Potser algunes funcionalitats et recordin a altres eines com ed o ex.
Però perquè ho entenguis millor, aquí tens alguns bons exemples pràctics d'ús de set. Els he deixat comentats perquè sàpigues per què serveix cadascun i agrupar-los tots dins de la mateixa requadre:
#Ver las líneas de un fichero de texto de la 15 a la 17 sed -n 15,17p nombre.txt #Mostrar todo el contenido excepto las líneas 10 a 14 sed 10,14d nombre.txt #Mostrar cada 3º línea comenzando desde la 2 sed -n '2,3p' nombre.txt #Eliminar la línea 4 sed 4d nombre.txt #Eliminar la última línea, sea cual sea sed $ d nombre.txt #Eliminar un rango de líneas sed '20 -34d ' nombre.txt #Eliminar solo las lineas mencionadas sed '29 -34! d ' nombre.txt #Agregar una línea en blanco tras cada línea de texto sed G nombre.txt #Localizar "hola" y sustituirlo por "hello" sed 's / hola / hello /' nombre.txt #Sustituir palabra de una línea concreta sed '4 s / peligro / seguridad /' nombre.txt #Sustituir una línea donde se encuentre la palabra "adios" por otra línea escrita sed '/ adios / c "Esta será la nueva línea"' nombre.txt
Espero haver-te ajudat amb aquest minitutorial de set...