GNU/Linux >> Tutoriales Linux >  >> Linux

Algunos comandos aleatorios de Linux de una sola línea [Parte 2]

Esta es la segunda parte de la serie de comandos de Linux de una sola línea para hacer que su línea de comandos sea más fácil, mejor y más rápida. La primera parte de esta serie ya está disponible. Es posible que desee leerlo desde el enlace a continuación.

  • Algunos comandos aleatorios de Linux de una sola línea [Parte 1]

Algunos de los comandos que se dan a continuación se recopilan de Arch wiki, /r/linux, Askubuntu y Stack Overflow. Todo el crédito va a la comunidad. Y algunos son mis propios hallazgos de la experiencia del día a día. Esta es la segunda parte de la serie. Estaremos publicando las partes subsiguientes cada fin de mes. Comencemos, ¿de acuerdo?

Comandos aleatorios de Linux de una línea

  1. Comencemos esta parte con Emacs. Si tiene Emacs instalado en su sistema, presione CTRL+x y CTRL+e para abrir el editor de Emacs que contiene lo que acaba de escribir en su terminal. Por ejemplo, escriba "ls" en su Terminal y presione CTRL+x seguido de CTRL+e. Ahora el editor de Emacs se abrirá automáticamente con "ls".
  2. Para listar archivos y directorios en el directorio de trabajo actual, escriba:

$ du -sxh * | sort -h

Los elementos más pequeños se mostrarán en la parte superior.

  1. Para volver al directorio de trabajo anterior desde cualquier ubicación, escriba:
$ cd -

Tenga en cuenta el espacio entre cd y - (guión).

Para volver a su directorio $HOME desde cualquier ubicación, el comando es:

$ cd

No importa cuál sea su directorio de trabajo anterior. El comando "cd" lo llevará desde cualquier ubicación a su directorio $HOME.

  1. Algunas veces me olvido de agregar "sudo" cuando estoy editando los archivos de configuración de Apache usando el editor vim. ¿El resultado? No pude guardar el archivo después de hacer algunos cambios. Tirará el error de permiso denegado si intento guardar. Este genial truco me ayudó a guardar un archivo editado en vim sin los permisos necesarios.
:w !sudo tee %

No necesita salir de vim y volver a editar el archivo con el permiso sudo. Después de realizar los cambios, simplemente escriba encima de la línea para guardarlo con permisos sudo. Es un truco realmente genial cuando te olvidas de agregar "sudo" al editar archivos.

  1. Para recuperar un comando con un prefijo específico del historial de BASH sin ejecutar el comando, escriba:
$ !su:p

El comando anterior recuperará el último comando con el prefijo "su", pero no lo ejecutará. Como puede ver en la imagen de arriba, mi último comando con el prefijo "su" fue - sudo netctl restart wlp9s0sktab .

  1. Para monitorear continuamente la salida de un archivo, use este comando:
$ tail -f /var/log/pacman.log

Este comando será útil para monitorear un archivo que produce muchos resultados.

  1. Para actualizar un solo paquete usando el administrador de paquetes "APT", use:
$ sudo apt-get install --only-upgrade <package-name>
  1. Si accidentalmente modificaste o sobrescribiste tu .bashrc archivo, puede restaurar su configuración predeterminada copiando la copia predeterminada de skel carpeta.
$ cp /etc/skel/.bashrc ~/

Tenga en cuenta que este comando sobrescribirá todos los cambios en su archivo .bashrc existente.

  1. Para "ls" automáticamente al cambiar de directorio, agregue las siguientes líneas en su .bashrc archivo.
cd() {        
     builtin cd "[email protected]" && ls -lA
}

Para actualizar los cambios realizados en su archivo .bashrc, ejecute:

$ source ~/.bashrc

Ahora cd a cualquier directorio. Verá la lista de archivos y carpetas, incluidos los elementos ocultos. Tenga en cuenta que a veces será molesto cambiar a un directorio que contiene cientos de archivos/carpetas.

  1. Para mostrar el número total de archivos y carpetas en el directorio actual, ejecute:
$ echo $(($(ls -l | wc -l) - 1))

Para mostrar el número total de archivos/carpetas, incluidos los archivos ocultos, escriba:

$ echo $(($(ls -lA | wc -l) - 1))

11.Para descargar un paquete .deb con todas las dependencias requeridas sin instalarlo, use este comando:

$ sudo apt-get install --download-only vim

Este comando descargará el paquete "vim" con todas las dependencias necesarias, pero no lo instalará.

Para obtener más detalles, consulte este enlace.

  • Descargar paquetes con dependencias localmente en Ubuntu

También puede descargar un paquete .rpm con todas las dependencias sin instalarlo. Consulte este enlace a continuación para saber cómo hacerlo.

  • Cómo descargar un paquete RPM con todas las dependencias en CentOS
  1. Para enumerar todos los paquetes instalados en un sistema basado en Debian, ejecute:
$ dpkg -l

Para mostrar los archivos instalados y los detalles de la ruta de un paquete dado, use:

$ dpkg -L <package-name>

Lectura recomendada:

  • Cómo enumerar los paquetes instalados ordenados por fecha de instalación en Linux
  • Cómo listar los paquetes instalados que pertenecen a un grupo en particular en Linux
  • Cómo enumerar los paquetes instalados desde un determinado repositorio en Linux
  • Cómo encontrar si un paquete está instalado o no en Linux y Unix
  1. Para mostrar el estado actual del sistema, la hora, la duración, la lista de usuarios conectados actualmente y otros detalles del usuario, ejecute:
$ w

  1. Para mostrar el uso del disco de todos los archivos y directorios (incluidos los archivos ocultos) en el directorio de trabajo actual en formato legible por humanos, use este comando:
$ du -sch .[!.]* *

Para obtener más ejemplos de comandos "du", consulte este enlace.

  • Cómo encontrar el tamaño de un directorio en Linux
  1. Algunas veces es posible que desee escribir el resultado de un comando en particular en varios archivos y enviárselo a sus colegas, amigos. Si es así, puede hacerlo como se indica a continuación.
$ uname -r | tee file1 file2 file3

Este comando escribe la salida del comando "uname -r" en archivo1, archivo2 y archivo3. Si los archivos no existen, los creará y escribirá la salida. Una desventaja de usar este comando es que sobrescribirá el contenido de los archivos. Si no desea eso, puede agregar la salida usando el indicador "-a" como se muestra a continuación.

$ uname -r | tee -a file1 file2 file3
  1. Para ordenar alfabéticamente un archivo y mostrar el resultado en una sola línea:
$ cat <file-name> | tr '|' '\n' | sort | tr '\n' '|' | sed "s/.$/\\n/g"

Por ejemplo, tengo un archivo llamado "example.txt" con el siguiente contenido:

$ cat example.txt 
abc
cab
bac
bca
cba

Ahora ordenemos alfabéticamente el contenido de este archivo y mostremos el resultado en una sola línea. Para hacerlo, ejecute:

$ cat example.txt | tr '|' '\n' | sort | tr '\n' '|' | sed "s/.$/\\n/g" 
abc|bac|bca|cab|cba
  1. ¿Está dispuesto a aprender JavaScript? Entonces diríjase al siguiente sitio.
  • https://www.dwitter.net/

Este es un sitio web respaldado por la comunidad donde las personas componen programas JavaScript de 140 caracteres que producen imágenes interesantes.

  1. Para eliminar los caracteres específicos en un comando dado, haz lo siguiente:
$ echo 'Hell1o, Welcome1 2to OSTechNix4' | tr -d '1-9'

El comando anterior eliminará los números del 1 al 9 y mostrará el resultado final.

  1. ¿La tecla "RETROCESO" no funciona en su teclado? ¡No hay problema! Todavía puede eliminar los caracteres en la Terminal en un sistema donde la tecla RETROCESO no funciona presionando "CTRL+h" llaves.
  2. Para ver todos los usuarios que iniciaron sesión recientemente en un sistema, escriba:

$ last

Para saber cuándo fue la última vez que un usuario inició sesión, escriba:

$ last <username>

Para ver todos los intentos de inicio de sesión incorrectos, escriba:

$ sudo lastb
  1. ¿Está configurando un servidor web de prueba con Nginx? Puede usar este generador de configuración de Nginx en línea gratuito para propósitos generales:
  • https://nginxconfig.io/

Simplemente ingrese los detalles, como dominio, raíz del documento, etc., en la columna respectiva y generará automáticamente la configuración de Nginx según su entrada a medida que escribe. Simplemente puede copiarlo/pegarlo en su /etc/nginx/nginx.conf expediente. Esto es realmente útil para fines de aprendizaje y evaluación.

  1. Para fusionar dos archivos uno al lado del otro, cada uno en su columna, usando TAB como delimitador, puede usar este comando:
$ paste file1 file2

Digamos que tiene dos archivos, a saber, file1.txt y archivo2.txt con los siguientes contenidos.

$ cat file1.txt 
Apple
Orange
Mango
$ cat file2.txt
30
25
40

Si usa el comando cat para ver la salida de ambos archivos, la salida será:

$ cat file1.txt file2.txt 
Apple
Orange
Mango
30
25
40

Pero si usa el comando pegar, verá que los campos se han organizado correctamente en una columna ordenada como la siguiente.

$ paste file1.txt file2.txt

  1. Para encontrar la última hora de acceso a un archivo, ejecute:
$ stat -c %x file

Para encontrar la hora de la última modificación de un archivo, use:

$ stat -c %y file
  1. Para encontrar el tipo de archivo, use:
$ file <file-name>

Ejemplo:

$ file ostechnix 
ostechnix: ASCII text
$ file image 
image: PNG image data, 330 x 146, 8-bit colormap, non-interlaced

Esto podría ser útil si el archivo dado no tiene extensión.

  1. Para guardar la salida de múltiples comandos como una sola línea en un archivo de texto, el comando sería:
$ echo "$(uname -r) $(hostname -i)" >> output.txt

El comando anterior escribe la salida de los comandos "uname -r" y "hostname -i" en un archivo llamado "output.txt".

La tercera parte de esta serie ya está lista y en vivo. Haga clic en el enlace de abajo para leerlo.

  • Algunos comandos aleatorios de Linux de una sola línea [Parte 3]

Linux
  1. Comandos de Linux:descripción general y ejemplos

  2. 40 comandos básicos de Linux utilizados con frecuencia

  3. 5 comandos de Linux que nunca uso

  4. Comandos básicos de Linux

  5. Comprender los comandos básicos de Linux

Comandos básicos de Linux

Comandos de Linux - Guía completa

Algunos comandos aleatorios de Linux de una sola línea [Parte 3]

Algunos comandos aleatorios de Linux de una sola línea [Parte 4]

11 comandos de Linux sin los que no puedo vivir

10 comandos de Linux muy estúpidos [algunos de ellos mortales]