Borrar los ficheros de log de más de 1 día de duración
#!/bin/bash
echo "Cleaning logs over $1 days old"
find /log_dir -ctime "$1" -name '*log' -exec rm {} \;
#!/bin/bash
echo "Cleaning logs over $1 days old"
find /log_dir -ctime "$1" -name '*log' -exec rm {} \;
Se tiene el fichero: haciendo awk ‘{for(i=1;i<=NF;i++){print $i}}’ file5.txt > file5_new.txt se tiene:
Tenemos un csv generado con Excel, delimitado por comas: Con awk ‘{$1=$1}1’ FS="," OFS="\t" file4.csv > file4.txt pasaríamos a tener: {$1=$1}1: Reinicia el buffer FS="," : Se le dice a awk que el delimitador actual es , OFS="\t" : Se le dice a awk que el nuevo delimitador pasa a ser \t
cat fichero | uniq Previamente el fichero ha de estar ordenado. Con 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" {} +
ls -R | grep : | sed -e ‘s/:$//’ -e ‘s/[^-][^\/]*\//–/g’ -e ‘s/^/ /’ -e ‘s/-/|/’
find . -name "*.jar" |xargs grep -il NombreClase