Quitar líneas repetidas en un fichero
cat fichero | uniq
Previamente el fichero ha de estar ordenado.
sort -u ordenamos y quitamos las líneas repetidas.cat fichero | uniq
Previamente el fichero ha de estar ordenado.
sort -u ordenamos y quitamos las líneas repetidas.
find -type f -exec grep -l "texto_busqueda" {} + y si queremos que la búsqueda sea exacta (por palabras) find -type f -exec grep -lw "texto_busqueda" {} +
Se cambian todos los ficheros con extensión .MOD de un directorio a extensión .mpeg: for i in *.MOD; do mv "$i" "${i[@]/%MOD/mpeg}"; done Se hace lo mismo, pero recursivamente en los subdirectorios: for i in `ls -r */*.MOD`; do mv -v "$i" "${i[@]/%MOD/mpeg}"; done
Tenemos el fichero Si se quiere la suma de la columna col3: awk ‘BEGIN{FS="\t";count=0}{if(NR>1){count+=$3}}END{print count}’ file6.txt se obtiene: 171
Comandos útiles !! Repite el último comando. !n Repite el comando número n (de history). !$ Último argumento del comando anterior. !:n Argumento número n del comando anterior. Combinaciones de teclas Combinación de teclas Acción Ctrl + A Ir al comienzo de la línea Ctrl+E Ir al final de la línea Ctrl+F Ir al siguiente…
rename -v ‘s/[^\x00-\x7F]|\?|\://g’ * Corrige el nombre de los ficheros Unix para que no den problemas si se copian en sistemas de ficheros Windows
#!/bin/bash echo "Cleaning logs over $1 days old" find /log_dir -ctime "$1" -name ‘*log’ -exec rm {} \;