Tutoriales

20 comandos de Linux de una línea para agregar a su caja de herramientas

Muchos usuarios de Linux experimentan una sensación duradera de logro después de escribir un comando particularmente inteligente que realiza múltiples acciones en una sola línea, o logra hacerlo en una línea que normalmente requiere 10 clics y una interfaz gráfica de usuario (GUI) Manipular tantas ventanas como sea posible posible. Además de ser una leyenda, la línea de sentido único también es un buen ejemplo de por qué la terminal se considera una herramienta tan poderosa.

Al final de este artículo, usted tendrá:

  • Lista de 20 comandos para facilitar las tareas mientras se trabaja en Linux

  • Conoce las posibilidades de combinar comandos simples para crear comandos más potentes
  • Ejecutar estos comandos es más divertido de lo que crees

Sin ningún orden particular de importancia, estas son nuestras 20 líneas principales de código para la terminal de Linux.Aunque combinamos algunos comandos más largos con \ Para facilitar la lectura, puede ingresarlos en una línea en la terminal, ya que están en una sola línea después de todo.

1. Aplicar comandos a archivos con diferentes nombres

cáscara {} Los transportadores son muy útiles para esto.Aquí hay un ejemplo con tres directorios. {}:

$ mkdir -p -v /home/josevnz/tmp/{dir1,anotherdir,similardir}

2. Edite el archivo en su lugar

¿Quiere reemplazar cadenas en uno o más archivos sin usar un editor? Por supuesto, sed Rescate:

$ sed -i 's#ORIGINAL_VALLUE#NEW_VALUE#g' myfile1 myfile2

Pero espera, los amantes de Perl te dirán que también pueden hacer esto:

Publicaciones relacionadas
$ perl -p -i -e 's#ORIGINAL#NEW_VALUE#' myfile1 myfile2

3. Usa un servidor web para compartir archivos rápidamente

Levanta la mano si no has usado esto al menos una vez Directorio de uso compartido rápido:

$ cd $mydir && python3 -m http.server 8888

4. Use journalctl para encontrar fallas

A veces las cosas se rompen.Puede usar la siguiente combinación para encontrar errores recientes journalctly la herramienta clásica sort y uniq:

$ journalctl --no-pager --since today \
--grep 'fail|error|fatal' --output json|jq '._EXE' | \
sort | uniq -c | sort --numeric --reverse --key 1

898172 "/usr/bin/dockerd"
    752 "/usr/local/sbin/node_exporter"
     30 "/usr/bin/gnome-shell"
     26 "/usr/bin/cat"
     22 "/usr/libexec/gsd-media-keys"
[...]

En este caso, el demonio Docker parece muy infeliz.

[ Download this eBook to get ready for your Red Hat remote exam. ]

5. Copia de seguridad mediante transferencia de archivos cifrados

usar ssh y tar Haz una copia de seguridad segura. Se juntan como mantequilla de maní y mermelada:

$ tar --create --directory /home/josevnz/tmp/ --file - *| \
ssh raspberrypi "tar --directory /home/josevnz \
--verbose --list --file -"

Puede darle vida a sus trabajos de respaldo con compresión y encriptación, como agregar ingredientes a un sándwich.

6. Escribe archivos transitorios

Este es un gran truco cuando necesitas escribir documentos de varias líneas:

$ cat</my/new/file
Line1
Line2
A $VARIABLE
DOC

tú también puedes cat > fileCuando termine de editar, simplemente ingrese el carácter EOF (Control+D):

[josevnz@dmaf5 temp]$ cat > testfile
This is a test
multiple lines
and here we go
[josevnz@dmaf5 temp]$ 

7. Busque un archivo con algunas extensiones y excluya otras

Este ejemplo utiliza grep Un método para buscar un archivo específico. Es muy rápido y fácil de recordar:

$ grep -R 'import' --include="*.java" --color MySourceCodeDir

o puedes probar find manera (usando xargs manejar un gran número de coincidencias correctamente):

$ find MySourceCodeDir/ -name '*.java' -type f -print| xargs \
grep --color 'import

Por qué find, podrías preguntar?puedes combinar find y -exec Primero realice la operación en el archivo, luego pase el resultado al filtro. Las posibilidades de mecanizado aquí son infinitas.

8. Supervise la memoria sin top o htop

Es casi hacer trampa.repite un comando como freecada cinco segundos y resaltar la diferencia:

$ watch -n 5 -d '/bin/free -m'

9. Muestra el tamaño de la partición del disco

usar lsbk (bloque de lista) y jq (Manipule JSON en la línea de comando) Mostrar información de partición:

$ lsblk --json | jq -c '.blockdevices[]|[.name,.size]'
["loop0","55.5M"]
["loop1","156M"]
["loop2","32.3M"]
["zram0","4G"]
["nvme0n1","476.9G"]

10. Muestra rápidamente los tipos de archivos

Esta Qué es la funcion se llama wiTe dirá rápidamente el tipo de archivo.

Verifique un solo archivo:

$ function wi { test -n "$1" && stat --printf "%F\n" "$1"; }

Revisa varios archivos:

$ function wi { test "$#" -gt 0 && stat --printf "%n: %F\n" "$@"; }

notas: es más funcional y puede hacer el mismo trabajo que un alias.

11. Muestra el tamaño de los RPM instalados

Si tiene un sistema basado en RPM, tarde o temprano formateará sus consultas. Aquí hay un ejemplo:

$ rpm --queryformat="%12{SIZE} %{NAME}\n" \
-q java-11-openjdk-headless

[ Train and test on our latest courses and exams from Red Hat Training & Certification: Red Hat Enterprise Linux skills path. ]

12. Muestra el tamaño total de un grupo de archivos

Bajo estas circunstancias, find El comando actúa como un filtro para mostrar el tamaño de cada archivo en bytes y finalmente el tamaño total:

$ t=0; for n in $(find ~/Documents -type f -name '*.py' -print | xargs \
stat --printf "%s "); do ((t+=n)); done; echo $t

O si quieres una función (mejor) prueba esto:

$ function size { t=0; test -d "$1" && for n in $(find $1 \
-type f -name '*.py' -print| \
xargs stat --printf "%s "); do ((t+=n)); done; echo $t; }

size $mydir

13. Actualice todos los repositorios de Git en un directorio

ya sabes lo útil git Si. Aquí hay un truco para mejorar la eficiencia de la actualización:

$ for i in */.git; do cd $(dirname $i); git pull; cd ..; done

14. Exponer un directorio web usando un contenedor

Los contenedores son fundamentales hoy en día. Este one-liner expone un directorio a través de Podman:

$ podman run --rm -v .:/usr/share/nginx/html:ro,Z \
-p 30080:80 -d nginx

15. Consulta el tiempo

Use esta función para determinar si necesita una chaqueta hoy:

weather() { curl -s --connect-timeout 3 -m 5 http://wttr.in/$1; }

16. Muestra las 10 principales direcciones IP que acceden al servidor web

Esta es una tarea que los administradores de red a menudo pueden usar Nginx (también se puede usar con Apache) para obtener las 10 principales direcciones de protocolo de Internet que acceden al servidor web desde el registro de acceso:

$ cat /var/log/nginx/access.log | cut -f 1 -d ' ' | sort | \
uniq -c | sort -hr | head -n 10

17. Flotador redondo en Bash con ayuda de Python

Puedes hacer algunas cosas geniales con Python, pero este ejemplo simplemente redondea el número:

$ echo "22.67892" | python3 -c "print(f'{round(float(input()))}')"
23

18. Ejecuta una mini calculadora

Esta función define una calculadora rápida con precisión variable en la línea de comando (el valor predeterminado es 2).usa ANTES DE CRISTO.Crea la función así:

$ function qqbc() { echo "scale=${2:-2}; $1" | bc -l

A continuación, realice un cálculo rápido:

$ qqbc "2/3"
.66

Si necesita precisión adicional, simplemente defina el segundo parámetro:

$ qqbc "2/3" 4
.6666

Esta herramienta se llama qqbc Porque es una mejora con respecto a una función antigua. qbc.

19. Convertir CSV a JSON

Este truco es una modificación. esta popular receta Convierta el archivo CSV a formato JSON:

$ python3 -c \
"import csv,json,sys;print(json.dumps(list(csv.reader(open(sys.argv[1])))))" \
covid19-vaccinations-town-age-grp.csv

20. Use Docker para instalar y ejecutar comandos

Si tiene Docker instalado y desea ejecutar un comando sin instalar un montón de dependencias en su sistema (mientras realiza una ejecución rápida), esto es probablemente lo que necesita:

$ docker run --rm --interactive curlimages/curl curl \
--verbose --location --fail --silent --output - \
https://example.com

Este comando ejecuta la última versión de curl del contenedor y luego eliminarlo. Tenga en cuenta que el comando comienza con un guión (-), que cuenta curl salida a su terminal. Las posibilidades aquí son infinitas.

envolver

La capacidad de crear poderosas combinaciones de comandos simples es una de las razones por las que Unix y Linux son tan populares.

Por suerte. Aprender estas palabras de una sola línea no es difícil. Concéntrese en recordar lo que hace un comando simple, luego piense en cómo mezclar muchos comandos simples para hacer una receta poderosa.

comprobar a menudo man página o uso info para determinar qué más puede hacer la herramienta. Es posible que se sorprenda al saber que una herramienta puede hacer todo sin combinarla con otra utilidad.

Hay muchos sitios en Internet con muchos ejemplos de una línea. Esperamos que estos ejemplos lo guíen para escribir mejor sus propias frases ingeniosas.

LEER  Cómo eliminar paquetes Snap de Ubuntu y otros Linux

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba