Skip to content

Instantly share code, notes, and snippets.

@elcascarudo-dev
Last active May 13, 2020 00:28
Show Gist options
  • Save elcascarudo-dev/703d2bb93361e5380327366594d23a03 to your computer and use it in GitHub Desktop.
Save elcascarudo-dev/703d2bb93361e5380327366594d23a03 to your computer and use it in GitHub Desktop.
Comandos linux ( grep - free - sort - du - df - find - awk )
-- Paramtros
-i: la búsqueda no distinguirá entre mayúsculas y minúsculas. Es decir, si quieres buscar la palabra «auto» será lo mismo que «AUTO»
-c: solo mostrará el número de líneas que coinciden con el patrón buscado
-r: habilita la búsqueda recursiva en el directorio actual
-n: busca líneas y precede cada línea coincidente con un número de línea.
-v: con esta opción, se nos muestran las líneas que no coinciden con el patrón que hemos buscado
-l: listo los arhivos en los que se encuentran las coninsidencias
-- Patrones
^ capucha se utiliza para buscar un patrón que sólo se produce al principio de una línea.
-> grep "^Class" archivo.txt
Los corchetes [] se utilizan para hacer coincidir cualquiera de un conjunto de caracteres.
-> grep "Class [123]" archivo.txt
[-] Los corchetes con guion se pueden utilizar para especificar un rango de caracteres, ya sea numérico o alfabético.
-> grep "Class [1-3]" archivo.txt
[^]Los corchetes con capucha se utilizan para excluir caracteres de un patrón de búsqueda.
-> grep "Class [^1-2]" archivo.txt
$ signo de dólar se utiliza para buscar un patrón que sólo ocurre al final de una línea.
-> grep "1$" archivo.txt
. punto se usa para coincidir con cualquier carácter, por lo que es un comodín, pero sólo para un único carácter.
-> grep "A….a" archivo.txt
\ Ignora el significado especial del próximo carácter
-> grep "\[ERROR\]" archivo.txt
free -h
-- Parametros
-h muestra la memoria para humanos
-m muestra la memoria en mega-byts
-g muestra la memoria en giga-byts
-w muerstra seprada la memoria de cache y buffer
-t imprime el total de la memoria
-s imprime la salida cada n segundo ( -s5 )
-- Paramentros
-c Comprueba si los archivos están ordenados, y si es así, no se genera ninguna salida.
-m Fusiona los archivos especificados. Asume que ya están ordenados.
-u Elimina las líneas repetidas.
-o archivo Especifica el nombre del archivo de salida. Si no se especifica es la salida estándar.
-d Solo considera letras, cifras y espacios en blanco. No caracteres especiales.
-f Trata mayúsculas y minúsculas como iguales.
-i Ignora los caracteres no imprimibles de las claves de ordenación.
-M Trata la clave de ordenación como si fuera un mes. MAY es menor que JUN, que a su vez es menor que JUL, y así sucesivamente.
-n Especifica que una clave es numérica, es decir, realiza la ordenación numérica.
-r Invierte el orden de ordenación.
-tcar Utiliza car como separador de campo en vez de tabuladores o blancos.
-b Ignora blancos en la clave de ordenación.
+num Comienza la ordenación por el campo de posición num. Recordar que el primer campo es el cero.
-num Detiene la comparación antes del campo de posición num. Ese campo no lo utiliza para ordenar.
## du
El comando du (abreviatura de uso de disco) es un comando útil que se utiliza para encontrar el uso del disco para archivos y
directorios.
du se utiliza con varias opciones proporcionando resultados en muchos formatos.
du -hs * | sort -nr
-- Parametros
-h Uso del disco con tamaños de archivo/directorio en formato legible para humanos, es decir en kb, mb, etc
-s Tamaño total del disco de un directorio
## df
El comando df (abreviatura de sistema de archivos en disco) se utiliza para mostrar la utilización del disco para un sistema Linux.
df -h
-- Parametros
-h Uso del disco con tamaños de archivo/directorio en formato legible para humanos, es decir en kb, mb, etc
-T Muestra información de una partición en particular
find [ruta] [expresión_de_búsqueda] [acción]
-- Parametros
-name "nombre": nombre de archivo
-> find / -name reporte
-> find / -iname Reporte (lo mismo, pero sin tomar en cuenta mayúsculas y minúsculas)
-> find / -name "[0-9]*" (todo lo que empieze con un dígito)
-> find / -name "[Mm]*" (todo lo que empieze con un la letra M o m)
-> find / -name "[a-m]*.txt" (todo lo que empieze entre a y m y termine en ".txt")
-type f: que sean archivos (file)
-> find / -type f
-type d: que sean directorios
-> find / -type d
-size 1000k Busca archivos por tamaño
Se admiten cuatro parámetros después del número en -size:
c = bytes
w = 2 byte words
k = kilobytes
b = 512-byte bloques
-> find /var/log -size +15000k -name "*.jpg" (busca archivos mayores a 15 megas del tipo jpg)
-empty: busca archivos vacios
-> find . -empty
-exec: permite ejecutar acciones sobre el resultado de cada línea o archivo devuelto por find
Después de ls -lh que nos devuelve una salida formateada de ls se indica la cadena '{}'
que se sustituye por cada salida de find.
-> find /tmp -size +1024k -exec rm -f {} \;
-delete: elimina los archivos encontrados por el find
-> find /tmp -size +3000k -delete
awk options program file
---------------------------------------------------------------------------------------------------------------
'{print $x}' Imprime salida
$0 para toda la línea.
$1 para el primer campo.
$2 para el segundo campo.
$n para el campo enésimo campo.
--Parametros
-F Defino el separador si necesito que no sean los espacion (-F:)
-f Ejecuta instrucciones desde un archivo (-f archivo.txt)
--Operadores
BEGIN{operadores} Las opción que ejecuta antes de imprimir
FIELDWIDTHS Especifica el ancho del campo.
RS Especifica el separador de registros.
FS Especifica un separador de campos.
OFS Especifica un separador de Salidas.
ORS Especifica el separador de Salidas.
END{operadores} Las opción que ejecuta luego de imprimir
Ejemplo 1:
ps ax | grep java | grep tomcat | awk '{print $1}'
Ejemplo 2:
[archivo]
BEGIN {
print "Usuario y su directorio home"
print "NombreUsuario \t DirectorioHome"
print "_____________ \t ______________"
FS=":"
}
{
if( $6 == "/home/"$1 ){
print $1 " \t " $6 }
}
END {
print "\n Fin de salida"
}
[comando]
awk -f archivo /etc/passwd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment