La siguiente entrada pretende ser una recopilación de los comandos de mas utilidad que pueden ser empleados en Linux. Esta entrada irá creciendo con el tiempo según se añadan mas comandos.
Abrir puertos TCP o UDP
El comando nc permite entre otras opciones abrir puertos en un host. Dichos puertos pueden ser tanto TCP como UDP.
Abrir un puerto TCP
nc -l “puerto”
ej:
nc -l 5555
Abrir un puerto UDP
nc -u -l “puerto”
ej:
nc -u -l 5555
Conectarse a un servidor
nc “direcciónIP” puerto
ej:
nc 10.0.0.1 5555
Analizar ancho de banda por interfaz
bwm-ng
Para analizar el tráfico transmitido o el tráfico recibido se puede emplear la herramienta speedometer. Dicha herramienta se obtendrá a través de la ejecución del siguiente comando:
sudo apt-get install speedometer
Analizar tráfico transmitido:
speedometer -t eth0
Analizar tráfico recibido:
speedometer -r eth0
Buscar contenido en un fichero empleando expresiones regulares
grep -w expresión regular
Buscar un archivo
find ruta -name fichero
ej:
find / -name etc
Buscar un programa
which ls
El comando devolverá la ruta del programa en cuestión. Si se le añade la opción -a el comando devolverá todas las ubicaciones posibles para dicho programa
which -a ls
Comprimir y descomprimir ficheros en tar gz
comprimir:
tar -zcvf nombrefichero.tar.gz ruta_directorio_a_comprimir
ej:
tar -zcvf personal.tar.gz /home/cdui/personal
descomprimir:
tar -zxvf fichero.tar.gz
descomprimir en un directorio:
tar -zxvf fichero.tar.gz -C /home/cdui/
Comprobar el espacio en disco
df -H
Copiar un fichero
cp fichero_origen fichero_destino
Se pueden copiar varios ficheros distintos a otra ruta
cp fichero1 fichero2 fichero3 /home/user1/ficheros
Cortar una fila empleando un carácter como separador
cut -d’separador’ -f número de campo
ej:
cut -d’,’ -f 3
En este caso se emplea como separador la coma “,” y se selecciona el tercer campo separado. Es decir para el siguiente ejemplo el comando devolvería un 4
x,e,4,5
Desmontar una unidad compartida
umount
En el caso que queramos desmontar una unidad en formato cifs se puede emplear el comando umount de la siguiente forma:
umount -a -t cifs -l
Diferenciar dos archivos
diff fichero1 fichero2
Permite comparar ficheros. También funciona con directorios y permite comparar el contenido de dichos directorios
Ejecutar un comando periódicamente
watch -n 1 “comando a ejecutar”
Destacar que la opción -n permitirá establecer el periodo de ejecución del comando en segundos. Ejemplo:
watch -n 1 ls -la
Eliminar lineas duplicadas
uniq
El comando uniq se puede combinar con opciones como las siguientes:
uniq -u
Solo muestra las líneas únicas
uniq -d
Muestra las líneas duplicadas
uniq -c
Muestra el número de veces que una línea está duplicada
Eliminar una línea de un fichero
sed -i “númerodelinea d” fichero
ej:
sed -i “4 d” /etc/fichero
El ejemplo eliminará la línea número 4 del fichero /etc/fichero
Eliminar un proceso
kill “id del proceso”
Se puede obtener el id del proceso a través del comando PS
Enviar constantemente ceros
Si se realiza un cat de la ruta /dev/zero se podrá enviar constantemente ceros si redireccionamos la salida a un fichero o un puerto. Por ejemplo:
cat /dev/zero | nc 10.0.0.1 5555
De esta forma se redireccionará la salida al puerto 5555 del servidor 10.0.0.1
Información del procesador
cat /proc/cpuinfo | grep processor
Muestra información del procesador. Si se quiere obtener el número de procesadores se añadirá a la salida el comando wc
cat /proc/cpuinfo | grep processor | wc -l
Listar el contenido de una carpeta
ls -la
La opción -l muestra la información en formato extendido
La opción -a permite mostrar los archivos ocultos
Listar el contenido de una carpeta ordenado numericamente:
ls -v1
Mostrar fecha
date
Para mostrar la fecha en un formato especifico por ejemplo Horas y Minutos se ejecutará de la siguiente forma:
date +”%H:%M”
Si se quiere restar a la hora un minuto se puede emplear el comando date de la siguiente forma:
date +”%H:%M” –date=”+1 minutes ago”
Mostrar la primera columna de un fichero
awk -F”,” ‘{print $1}’ fichero
Mostrar las primeras líneas de un fichero
head
Mostrar las últimas líneas de un fichero
tail
La opción -f permite verificar las últimas líneas así como nuevas líneas que se le pueden añadir al fichero por el final en tiempo real.
tail -f
Mostrar los archivos abiertos por los procesos
lsof
Mostrar los archivos abiertos por un proceso (también se puede con lsof -c nombredeprograma)
lsof | grep dropbox
Mostrar los procesos que usan un determinado puerto
lsof -i udp:3500
Mostrar los procesos en ejecución en el sistema
ps -aux
La opción -a permite mostrar todos los procesos que se están ejecutan todas las terminales.
La opción -u muestra el usuario con el cual se está ejecutando el proceso.
Finalmente la opción -x muestra aquellos procesos que no se controlan por ningún terminal.
Si solo se quieren mostrar los procesos en ejecución para un determinado usuario bastan con ejecutar el comando ps de la siguiente forma:
ps -u
Obtener el número de la fila de un campo de un fichero
awk -F”,” ‘{print $1}’ fichero | grep -n “campoabuscar”
ej
awk -F”,” ‘{print $1}’ fichero | grep -n aa
En este caso devolverá el siguiente valor:
1:cc:cc;cc. aaa
2:aa aa ss ff
Para un fichero con el siguiente contenido:
cc:cc;cc. aaa
aa aa ss ff
xx cc 11 22
Sumatorio de un campo de un fichero
awk ‘{s+=$5} END {print s}’ /home/ubuntu/informes/temporal
En este caso se realiza un sumatorio del campo numero 5, del fichero temporal que se encuentra en la ruta /home/ubuntu/informes/temporal.
Para comentar debe estar registrado.