Comandos útiles para crear un servidor de chat de línea de comandos y eliminar paquetes no deseados en Linux


Aquí estamos con la siguiente parte de Consejos y trucos de la línea de comandos de Linux. Si te perdiste nuestra publicación anterior sobre Trucos de Linux, puedes encontrarla aquí.

  1. 5 Linux Command Line Tricks

En esta publicación, presentaremos 6 consejos de línea de comandos, a saber, crear un chat de línea de comandos de Linux usando el comando Netcat, realizar la adición de una columna sobre la marcha desde la salida de un comando, eliminar paquetes huérfanos de Debian y CentOS, obtener IP local y remota de línea de comandos, obtenga salida de color en la terminal y decodifique varios códigos de color y, por último, pero no menos importante, la implementación de etiquetas hash en la línea de comandos de Linux. Vamos a comprobarlos uno por uno.

1. Cree un servidor de chat de línea de comandos de Linux

Todos hemos estado usando el servicio de chat desde hace mucho tiempo. Estamos familiarizados con el chat de Google, Hangout, el chat de Facebook, Whatsapp, Hike y varias otras aplicaciones y servicios de chat integrados. ¿Sabe que el comando nc de Linux puede hacer que su caja de Linux sea un servidor de chat con solo una línea de comando?

nc es la depreciación del comando netcat de Linux. La utilidad nc a menudo se conoce como navaja suiza según el número de sus capacidades integradas. Se utiliza como herramienta de depuración, herramienta de investigación, lectura y escritura en la conexión de red mediante TCP/UDP, verificación de avance/retroceso de DNS.

Se usa principalmente para escaneo de puertos, transferencia de archivos, puerta trasera y escucha de puertos. nc tiene la capacidad de utilizar cualquier puerto local no utilizado y cualquier dirección de origen de red local.

Utilice el comando nc (en el servidor con dirección IP: 192.168.0.7) para crear un servidor de mensajería de línea de comandos al instante.

$ nc -l -vv -p 11119

Explicación de los interruptores de comando anteriores.

  1. -v : means Verbose
  2. -vv : more verbose
  3. -p : The local port Number

Puede reemplazar 11119 con cualquier otro número de puerto local.

A continuación, en la máquina cliente (dirección IP: 192.168.0.15), ejecute el siguiente comando para inicializar la sesión de chat en la máquina (donde se está ejecutando el servidor de mensajería).

$ nc 192.168.0.7 11119

Nota: Puede terminar la sesión de chat presionando la tecla ctrl + c y también nc chat es un servicio uno a uno.

2. Cómo sumar valores en una columna en Linux

Cómo sumar los valores numéricos de una columna, generados como resultado de un comando, sobre la marcha en la terminal.

La salida del comando "ls -l".

$ ls -l

Observe que la segunda columna es numérica, que representa el número de enlaces simbólicos y la quinta columna es numérica, que representa el tamaño del archivo. Digamos que necesitamos sumar los valores de la quinta columna sobre la marcha.

Enumere el contenido de la quinta columna sin imprimir nada más. Usaremos el comando "awk" para hacer esto. "" Representa la quinta columna.

$ ls -l | awk '{print $5}'

Ahora use awk para imprimir la suma de la salida de la quinta columna canalizándola.

$ ls -l | awk '{print $5}' | awk '{total = total + $1}END{print total}'

¿Cómo eliminar paquetes huérfanos en Linux?

Los paquetes huérfanos son aquellos que se instalan como una dependencia de otro paquete y ya no son necesarios cuando se elimina el paquete original.

Digamos que instalamos un paquete gtprogram que dependía de gtdependency. No podemos instalar gtprogram a menos que gtdependency esté instalado.

Cuando eliminamos gtprogram, no elimina gtdependency de forma predeterminada. Y si no eliminamos gtdependency, permanecerá como Paquete Orpahn sin conexión con ningún otro paquete.

# yum autoremove                [On RedHat Systems]
# apt-get autoremove                [On Debian Systems]

Siempre debe eliminar los paquetes huérfanos para mantener la caja de Linux cargada con las cosas necesarias y nada más.

4. Cómo obtener la dirección IP local y pública del servidor Linux

Para obtener su dirección IP local, ejecute el siguiente script de línea.

$ ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

Debe haber instalado ifconfig, si no, apt o yum los paquetes requeridos. Aquí estaremos canalizando la salida de ifconfig con el comando grep para encontrar la cadena "intel addr:".

Sabemos que el comando ifconfig es suficiente para generar una dirección IP local. Pero ifconfig genera muchas otras salidas y nuestra preocupación aquí es generar solo direcciones IP locales y nada más.

# ifconfig | grep "inet addr:"

Aunque la salida es más personalizada ahora, necesitamos filtrar nuestra dirección IP local solo y nada más. Para esto usaremos awk para imprimir la segunda columna solo canalizándola con el script anterior.

# ifconfig | grep “inet addr:” | awk '{print $2}'

A partir de la imagen anterior, queda claro que hemos personalizado mucho la salida, pero aún no es lo que queremos. La dirección de bucle invertido 127.0.0.1 todavía está en el resultado.

Usamos el indicador -v con grep que imprimirá solo aquellas líneas que no coincidan con la proporcionada en el argumento. Cada máquina tiene la misma dirección de loopback 127.0.0.1, así que use grep -v para imprimir esas líneas que no tienen esta cadena, canalizándola con la salida anterior.

# ifconfig | grep "inet addr" | awk '{print $2}' | grep -v '127.0.0.1'

Casi hemos generado la salida deseada, simplemente reemplace la cadena (addr :) desde el principio. Usaremos el comando de corte para imprimir solo la columna dos. La columna 1 y la columna 2 no están separadas por tabulación sino por (:) , por lo que debemos usar el delimitador (-d) canalizando la salida anterior.

# ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

¡Finalmente! Se ha generado el resultado deseado.

5. Cómo colorear la terminal Linux

Es posible que haya visto una salida en color en la terminal. También sabría habilitar/deshabilitar la salida de color en el terminal. De lo contrario, puede seguir los pasos a continuación.

En Linux, cada usuario tiene un archivo '.bashrc' , este archivo se usa para manejar la salida de su terminal. Abra y edite este archivo con el editor que elija. Tenga en cuenta que este archivo está oculto (el punto al comienzo del archivo significa oculto).

$ vi /home/$USER/.bashrc

Asegúrese de que las siguientes líneas a continuación no estén comentadas. es decir, no comienza con #.

if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dirc$
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

¡Una vez hecho! Guardar y Salir. Para que los cambios entren en vigor, cierre la sesión y vuelva a iniciar sesión.

Ahora verá que los archivos y carpetas se enumeran en varios colores según el tipo de archivo. Para decodificar el código de color, ejecute el siguiente comando.

$ dircolors -p

Dado que la salida es demasiado larga, canalicemos la salida con menos comando para que obtengamos la salida una pantalla a la vez.

$ dircolors -p | less

6. Cómo aplicar hash a los comandos y scripts de Linux

Estamos usando etiquetas hash en Twitter, Facebook y Google Plus (puede que haya otros lugares, no me he dado cuenta). Estas etiquetas hash facilitan a otros la búsqueda de una etiqueta hash. Muy pocos saben que podemos usar etiquetas hash en la línea de comandos de Linux.

Ya sabemos que # en los archivos de configuración y la mayoría de los lenguajes de programación se trata como línea de comentario y se excluye de la ejecución.

Ejecute un comando y luego cree una etiqueta hash del comando para que podamos encontrarlo más tarde. Digamos que tenemos un script largo que se ejecutó en el punto 4 anterior. Ahora crea una etiqueta hash para esto. Sabemos que ifconfig puede ser ejecutado por sudo o por el usuario root, por lo que actúa como root.

# ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d: #myip

La secuencia de comandos anterior se ha etiquetado con un hash "myip". Ahora busque la etiqueta hash en reverse-i-serach (presione ctrl + r), en la terminal y escriba "myip". También puede ejecutarlo desde allí.

Puede crear tantas etiquetas hash para cada comando y encontrarlas más tarde mediante la búsqueda inversa.

Eso es todo por ahora. Hemos trabajado arduamente para producir contenidos interesantes y bien informados para usted. ¿Qué opinas de cómo estamos? Cualquier sugerencia es bienvenida. Puede comentar en el cuadro a continuación. ¡Mantente conectado! Prestigio.