Tutorial del comando vdir de Linux para principiantes (8 ejemplos)
Listar el contenido de un directorio es una de las tareas más básicas en las que se ven envueltos los usuarios (tanto profesionales como novatos). El comando ls es, sin lugar a dudas, la herramienta más popular utilizada para este fin. Sin embargo, no es la única.
Hay algunas alternativas. Por ejemplo, existe una utilidad llamada vdir, de cuyos fundamentos hablaremos aquí. Pero antes de hacerlo, conviene mencionar que todos los ejemplos de este tutorial se han probado en una máquina Ubuntu 18.04 LTS y Debian 10.
Comando vdir de Linux
Al igual que ls, el comando vdir en Linux también se utiliza para listar el contenido de los directorios. A continuación se muestra su sintaxis:
vdir [OPTION]... [FILE]...
Y así es como lo explica la página man de la herramienta:
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.
A continuación se presentan algunos ejemplos al estilo de las preguntas y respuestas que deberían darte una buena idea de cómo funciona el comando vdir.
Q1. ¿Cómo se utiliza vdir?
El uso básico es bastante sencillo: basta con ejecutar el comando vdir sin ninguna opción.
vdir
Por ejemplo, en mi caso, la ejecución de «vdir» produjo la siguiente salida:
total 12
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Desktop
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Documents
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Downloads
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 2513 Apr 16 14:33 examples.desktop
drwxrwxr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Files-From-Desktop
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Music
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Pictures
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Public
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Templates
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Apr 16 14:33 Videos
Así que puedes ver que la salida es similar a la del comando ‘ls -l’.
Q2. ¿Cómo hacer que vdir muestre las entradas que empiezan por punto (.)?
Por defecto, la salida del comando vdir no muestra los nombres que empiezan por un punto (.). Sin embargo, puedes cambiar este comportamiento utilizando la opción de línea de comandos -a.
vdir -a
En mi caso se produjo la siguiente salida:
total 52
drwx------ 20 guest-A8CLd9 guest-A8CLd9 540 Sep 26 09:30 .
drwxrwxrwt 7 root root 16384 Sep 26 10:17 ..
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 220 Sep 26 09:29 .bash_logout
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 3637 Sep 26 09:29 .bashrc
drwxr-xr-x 12 guest-A8CLd9 guest-A8CLd9 260 Sep 26 09:37 .cache
drwxr-xr-x 16 guest-A8CLd9 guest-A8CLd9 360 Sep 26 09:29 .config
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Desktop
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Documents
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Downloads
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 8980 Sep 26 09:29 examples.desktop
drwxrwxr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Files-From-Desktop
drwx------ 3 guest-A8CLd9 guest-A8CLd9 60 Sep 26 09:30 .gconf
drwx------ 3 guest-A8CLd9 guest-A8CLd9 60 Sep 26 09:30 .gnome2
drwx------ 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:30 .gnome2_private
-rw------- 1 guest-A8CLd9 guest-A8CLd9 358 Sep 26 09:29 .ICEauthority
drwxr-xr-x 3 guest-A8CLd9 guest-A8CLd9 60 Sep 26 09:29 .kde
drwx------ 3 guest-A8CLd9 guest-A8CLd9 60 Sep 26 09:29 .local
drwx------ 4 guest-A8CLd9 guest-A8CLd9 80 Sep 26 09:30 .mozilla
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Music
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Pictures
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 697 Sep 26 09:29 .profile
drwxrwxr-x 2 guest-A8CLd9 guest-A8CLd9 60 Sep 26 09:29 .psensor
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Public
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Templates
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 40 Sep 26 09:29 Videos
-rw------- 1 guest-A8CLd9 guest-A8CLd9 61 Sep 26 09:29 .Xauthority
-rw------- 1 guest-A8CLd9 guest-A8CLd9 108 Sep 26 09:29 .xsession-errors
Así puedes ver que los nombres de los archivos que empiezan por un punto también se producen en la salida.
Q3. ¿Cómo hacer que vdir escale los tamaños por tamaño fijo?
Supongamos que quieres que vdir imprima los tamaños (5ª columna de la salida) en bloques de megabytes, entonces puedes hacerlo utilizando la opción –tamaño-de-bloque, suministrando «M» como entrada a la misma.
vdir --block-size=M
A continuación se muestra la salida que produjo este comando en mi sistema:
total 1M
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Desktop
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Documents
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Downloads
-rw-r--r-- 1 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 examples.desktop
drwxrwxr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Files-From-Desktop
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Music
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Pictures
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Public
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Templates
drwxr-xr-x 2 guest-A8CLd9 guest-A8CLd9 1M Sep 26 09:29 Videos
Así puedes ver que las entradas de tamaño se producen en bloques de megabytes (M).
Aquí tienes información útil relacionada con la entrada que requiere esta opción:
The SIZE argument is an integer and optional unit (example: 10K is
10*1024). Units are K,M,G,T,P,E,Z,Y (powers of 1024) or KB,MB,...
(powers of 1000).
Q4. ¿Cómo hacer que vdir produzca una salida como ls?
Por defecto, el comando ls no produce detalles en la salida: sólo el nombre de los archivos/directorios del directorio actual.
Sin embargo, vdir produce mucha información por defecto. Pero si quieres, puedes restringir vdir a un «ls» como la salida. Esto lo puedes hacer utilizando la opción de línea de comandos -C.
vdir -C
En mi caso se produjo la siguiente salida:
Desktop Documents Downloads examples.desktop Files-From-Desktop Music Pictures Public Templates Videos
Q5. ¿Cómo hacer que vdir produzca una salida en color?
Si comparas la salida producida por vdir en la sección anterior con la salida producida por el comando «ls», observarás una diferencia: la salida del comando ls está coloreada mientras que la de vdir no lo está.
Sin embargo, puedes forzar a vdir a producir también una salida coloreada. Esto lo puedes hacer utilizando la opción de línea de comandos –color.
vdir --color
Q6. ¿Cómo hacer que vdir produzca una salida sin clasificar?
Puedes hacerlo con la opción de línea de comandos -f.
vdir -f
A continuación se muestra la salida que produjo este comando en mi caso:
. .gnome2 Files-From-Desktop .local Music Templates .xsession-errors .cache .bash_logout
.. .mozilla .ICEauthority Videos Documents Downloads .Xauthority .config .profile
.gnome2_private .psensor .gconf Pictures Public Desktop .kde examples.desktop .bashrc
Así es como la página de manual explica esta opción -f:
-f do not sort, enable -aU, disable -ls --color
Q7. ¿Cómo hacer que vdir agrupe primero los directorios en la salida?
Si quieres que el comando vdir agrupe primero los directorios en la salida, utiliza la opción –group-directories-first.
vdir --group-directories-first
A continuación se muestra la salida que produjo este comando en mi caso:
total 12
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Desktop
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Documents
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Downloads
drwxrwxr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Files-From-Desktop
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Music
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Pictures
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Public
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Templates
drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Videos
-rw-r--r-- 1 guest-eugepN guest-eugepN 8980 Aug 22 2011 examples.desktop
Así puedes ver que todos los directorios aparecen primero en la lista.
Q8. ¿Cómo hacer que vdir produzca un número de índice para cada archivo?
Esto se puede conseguir utilizando la opción de línea de comandos -i.
vdir -i
A continuación se muestra un ejemplo de salida:
total 12
22 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Desktop
26 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Documents
23 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Downloads
6 -rw-r--r-- 1 guest-eugepN guest-eugepN 8980 Aug 22 2011 examples.desktop
155 drwxrwxr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Files-From-Desktop
27 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Music
28 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Pictures
25 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Public
24 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Templates
29 drwxr-xr-x 2 guest-eugepN guest-eugepN 40 Aug 22 2011 Videos
La primera columna contiene los respectivos números de índice.
Conclusión
Dependiendo de las necesidades, el comando vdir puede ser una herramienta útil para ti. En este tutorial, hemos hablado de algunas opciones clave que ofrece esta utilidad. Para saber más sobre esta herramienta, dirígete a su página man.