Modificadores más comunes en los comandos de GNU/Linux

Foro sobre GNU Linux
Responder
gbeltran
Mensajes: 328
Registrado: 13 May 2023, 01:15
Ubicación: Valencia - España
Contactar:

Modificadores más comunes en los comandos de GNU/Linux

Mensaje por gbeltran »

1. -l (listar en formato largo): Este modificador se utiliza con el comando `ls` para mostrar información detallada sobre los archivos y directorios. Por ejemplo:

Código: Seleccionar todo

guillermo@maquina:~$ ls -l
total 308392
-rwxr-xr-x  1 guillermo guillermo  99670660 abr 19 12:43  balenaEtcher-1.18.11-x64.AppImage
drwxr-xr-x 10 guillermo guillermo      4096 may 22 15:48 'Biblioteca de calibre'
-rw-r--r--  1 guillermo guillermo       362 feb 16 11:14  codigoqr.png
-rwxrwxr-x  1 root      root            412 feb 21 15:33  comprimir.sh
-rwxrwxrwx  1 guillermo guillermo       119 feb  5 10:21  conectalinneo.sh
-rwxrwxrwx  1 guillermo guillermo       117 feb 14 14:25  conecta.sh
-rw-r--r--  1 guillermo guillermo      6817 jul 18  2023  control.tar.gz
-rw-r--r--  1 guillermo guillermo 141260672 jul 18  2023  data.tar.xz
-rw-r--r--  1 guillermo guillermo         4 jul 18  2023  debian-binary
drwxr-xr-x  2 guillermo guillermo      4096 may 28 09:38  Descargas
drwxr-xr-x  3 guillermo guillermo      4096 may 15 15:39  Documentos
drwxr-xr-x  8 root      root           4096 feb 15 13:41  dokuwiki
-rw-r--r--  1 guillermo guillermo   4022688 feb 15 10:23  dokuwiki-a6b3119b5d16cfdee29a855275c5759f.tgz
drwxr-xr-x  2 guillermo guillermo      4096 mar 15 14:21  Downloads
drwxr-xr-x  2 guillermo guillermo      4096 mar  4 14:25  Escritorio
-rw-r--r--  1 guillermo guillermo      1122 feb 16 11:13  feh_019773_000001_codigoqr.png
...
Este comando mostrará los detalles como los permisos de archivo, el número de enlaces, el propietario, el grupo, el tamaño, la fecha y hora de la última modificación y el nombre del archivo.

2. -a (mostrar todos los archivos): Este modificador también se utiliza con el comando `ls` para mostrar todos los archivos, incluyendo los archivos ocultos. Por ejemplo:

Código: Seleccionar todo

guillermo@maquina:~$ ls -a
 .                                               Imágenes
 ..                                              installTest.sh
 balenaEtcher-1.18.11-x64.AppImage               ISOS
 .bash_history                                   latest.zip
 .bash_logout                                    .lesshst
 .bashrc                                         .local
'Biblioteca de calibre'                          mc-4.8.31
 .cache                                          .mozilla
 codigoqr.png                                    Música
 comprimir.sh                                    .mysql_history
 conecta2.sh                                Nextcloud
 conecta.sh                                      Nextcloud2
 .config                                         .pcsc10
 control.tar.gz                                  phpMyAdmin
 .cups                                           phpMyAdmin-5.2.1-all-languages
 data.tar.xz                                     phpMyAdmin.tar.gz
 debian-binary                                   .pki
 Descargas                                       Plantillas
 ...
Este comando mostrará todos los archivos y directorios, incluyendo aquellos cuyos nombres comienzan con un punto, que son archivos ocultos en Linux.

3. -r (invertir el orden): Este modificador se utiliza con varios comandos para invertir el orden de la salida. Por ejemplo, con el comando `ls`, mostrará los archivos en orden inverso. Con el comando `sort`, invertirá el orden de clasificación. Por ejemplo:

Código: Seleccionar todo

  ls -r
Esto listará los archivos d eun directorio en orden inverso.

Código: Seleccionar todo

sort -r archivo.txt
Esto mostrará el contenido de archivo.txt en orden alfabético.

4. -i (interactivo): Este modificador se utiliza con el comando `rm` y `mv` para pedir confirmación antes de eliminar o mover archivos. Por ejemplo:

Código: Seleccionar todo

    rm -i archivo.txt
    mv -i archivo.txt nuevo_archivo.txt
5. -R (recursivo): Este modificador se utiliza con varios comandos para realizar operaciones de manera recursiva en directorios y subdirectorios. Por ejemplo, con el comando `cp` y `rm`, copiará y eliminará respectivamente directorios y sus contenidos. Por ejemplo:

Código: Seleccionar todo

    cp -R directorio1 directorio2
    rm -R directorio
6. -f (forzar): Este modificador se utiliza con varios comandos para forzar la operación sin pedir confirmación. Por ejemplo, con el comando `rm`, eliminará archivos sin preguntar. Por ejemplo:

Código: Seleccionar todo

    rm -f archivo.txt
7. -v (verbose): Este modificador se utiliza con varios comandos para mostrar información detallada sobre lo que está haciendo el comando. Por ejemplo:

Código: Seleccionar todo

    cp -v archivo1.txt archivo2.txt
Este comando copiará `archivo1.txt` a `archivo2.txt` y mostrará los detalles de la operación.

8. -p (preservar): Este modificador se utiliza con el comando `cp` y `mv` para preservar los atributos del archivo como la fecha de modificación, la fecha de acceso, los permisos de archivo, etc. Por ejemplo:

Código: Seleccionar todo

    cp -p archivo1.txt archivo2.txt
9. -n (no sobrescribir): Este modificador se utiliza con el comando `cp` y `mv` para no sobrescribir un archivo existente. Por ejemplo:

Código: Seleccionar todo

    cp -n archivo1.txt archivo2.txt
10. -t (target directory): Este modificador se utiliza con el comando `mv` y `cp` para especificar el directorio de destino. Por ejemplo:

Código: Seleccionar todo

    mv -t /path/to/directory archivo.txt
    cp -t /path/to/directory archivo.txt
11. -d (directory): Este modificador se utiliza con el comando `ls` para listar los directorios como si fueran archivos regulares, en lugar de listar sus contenidos. Por ejemplo:

Código: Seleccionar todo

    ls -d
12. -h (human-readable): Este modificador se utiliza con varios comandos como `ls`, `du` y `df` para mostrar el tamaño de los archivos en un formato legible para los humanos (K, M, G). Por ejemplo:

Código: Seleccionar todo

    ls -lh
    du -h
    df -h
13. -c (check): Este modificador se utiliza con el comando `sort` para comprobar si los archivos de entrada están ordenados. Por ejemplo:

Código: Seleccionar todo

    sort -c archivo.txt
14. -x (one file system): Este modificador se utiliza con el comando `du` para omitir los directorios en diferentes sistemas de archivos. Por ejemplo:

Código: Seleccionar todo

    du -x
15. -z (zero): Este modificador se utiliza con el comando `tar` para comprimir o descomprimir archivos utilizando gzip. Por ejemplo:

Código: Seleccionar todo

    tar -czf archivo.tar.gz directorio
    tar -xzf archivo.tar.gz
gbeltran
Mensajes: 328
Registrado: 13 May 2023, 01:15
Ubicación: Valencia - España
Contactar:

Re: Modificadores más comunes en los comandos de GNU/Linux

Mensaje por gbeltran »

Diferencia entre los modificadores `-l`, `-ls` y `-la`:

1. -l: Este modificador se utiliza con el comando `ls` para listar los archivos en un formato largo, que incluye detalles como los permisos de archivo, el número de enlaces, el propietario, el grupo, el tamaño del archivo, y la fecha y hora de la última modificación. Por ejemplo:

Código: Seleccionar todo

    ls -l
2. -ls: Este no es un modificador comúnmente usado en los comandos de Linux. Si intentas usarlo con el comando `ls`, es probable que recibas un error. Sin embargo, `-ls` se utiliza en el comando `find` para listar los archivos encontrados en un formato similar al producido por `ls -l`. Por ejemplo:

Código: Seleccionar todo

    find . -name "*.txt" -ls
Este comando buscará todos los archivos con la extensión `.txt` en el directorio actual y subdirectorios, y los listará en un formato largo.

3. -la: Este es en realidad una combinación de dos modificadores, `-l` y `-a`. Se utiliza con el comando `ls` para listar todos los archivos (incluyendo los ocultos) en un formato largo. Por ejemplo:

Código: Seleccionar todo

    ls -la
Este comando mostrará todos los archivos y directorios, incluyendo aquellos cuyos nombres comienzan con un punto, que son archivos ocultos en Linux, y lo hará en un formato largo que incluye detalles como los permisos de archivo, el número de enlaces, el propietario, el grupo, el tamaño del archivo, y la fecha y hora de la última modificación.
gbeltran
Mensajes: 328
Registrado: 13 May 2023, 01:15
Ubicación: Valencia - España
Contactar:

Re: Modificadores más comunes en los comandos de GNU/Linux

Mensaje por gbeltran »

¿Hasta cuántos modificadores se pueden usar en un comando?

En teoría, no hay un límite estricto para el número de modificadores que puedes usar con un comando en Linux. Sin embargo, cada comando tiene un conjunto específico de modificadores que acepta, y cada modificador afecta la forma en que se ejecuta el comando.

Por ejemplo, el comando ls tiene muchos modificadores que puedes usar para cambiar la forma en que se enumeran los archivos y directorios. Podrías usar varios modificadores a la vez, como -l para el formato largo, -a para mostrar todos los archivos (incluyendo los ocultos), y -h para tamaños de archivo legibles por humanos. Esto se vería así:

Código: Seleccionar todo

ls -lah
Es importante recordar que no todos los modificadores pueden usarse juntos, ya que algunos pueden tener efectos contradictorios. Además, algunos comandos pueden tener un número limitado de modificadores disponibles.

Por lo tanto, aunque no hay un límite estricto para el número de modificadores, la cantidad que puedes usar en la práctica dependerá del comando específico y de lo que estés tratando de lograr. Te recomendaría consultar la página de manual (man) para cualquier comando que estés utilizando para ver qué modificadores están disponibles y cómo se pueden usar. Por ejemplo, puedes escribir man ls para ver la documentación del comando ls.
Guillermo
Site Admin
Mensajes: 362
Registrado: 13 May 2023, 00:32
Ubicación: Valencia - España
Contactar:

Re: Modificadores más comunes en los comandos de GNU/Linux

Mensaje por Guillermo »

Más sobre el comando 'sort'

El comando `sort` en Unix/Linux se utiliza para ordenar líneas de texto en un archivo o desde la entrada estándar. Veamos varias opciones:

Sintaxis básica

Código: Seleccionar todo

sort [opciones] [archivo]
Opciones comunes de `sort`

1. Ordenar de forma ascendente (por defecto):

Código: Seleccionar todo

   sort archivo.txt
   
2. Ordenar de forma descendente:

Código: Seleccionar todo

   sort -r archivo.txt
   
3. Ordenar numéricamente:

Código: Seleccionar todo

   sort -n archivo.txt
   
4. Ordenar alfabéticamente (ignorar mayúsculas):

Código: Seleccionar todo

   sort -f archivo.txt
   
5. Ordenar por un campo específico (por ejemplo, el segundo campo):

Código: Seleccionar todo

   sort -k 2 archivo.txt
   
6. Ordenar por múltiples claves:

Código: Seleccionar todo

   sort -k 2,2 -k 1,1 archivo.txt
   
7. Eliminar líneas duplicadas:

Código: Seleccionar todo

   sort -u archivo.txt
   
8. Ordenar por longitud de línea:

Código: Seleccionar todo

   sort -l archivo.txt
   
9. Especificar delimitador de campo (por ejemplo, coma):

Código: Seleccionar todo

   sort -t, -k 1 archivo.txt
   
10. Guardar la salida en un nuevo archivo:

Código: Seleccionar todo

    sort archivo.txt > archivo_ordenado.txt
    
11. Mostrar el número de líneas en la salida:

Código: Seleccionar todo

    sort -n archivo.txt | uniq -c
    
Ejemplo de uso completo
Si quisieras ordenar un archivo llamado `datos.txt` numéricamente y de forma descendente, ignorando mayúsculas y eliminando duplicados, podrías usar:

Código: Seleccionar todo

sort -rn -f -u datos.txt > datos_ordenados.txt
Otras opciones útiles
- `-o archivo`: Especifica un archivo de salida.
- `-b`: Ignora espacios en blanco al principio de las líneas.
- `-M`: Ordena meses (por ejemplo, "Ene", "Feb", etc.).
- `-V`: Ordena versiones (por ejemplo, "1.2", "1.10", etc.).

También puedes consultar la página de manual de `sort` para más detalles ejecutando:

Código: Seleccionar todo

man sort
Esto te dará una lista completa de todas las opciones disponibles y su descripción.
Responder