Versión 1.0 - marzo de 2010
En muchas explicaciones se simplifica mucho y se dice que el comodín asterisco significa cualquier cadena. Sin embargo significa cualquier cadena que no empiece por punto. Así se puede diferenciar entre los archivos ocultos y los normales. Veamos unos ejemplos:
$ rm -r *
Borra recursivamente todos los ficheros y directorios excepto los
ocultos.
$ rm -r .*
Borra recursivamente todos los ficheros y directorios
ocultos.
Por tanto usando secuencialmente las órdenes anteriores
borramos todo el contenido de un directorio.
$ rm -r *.*
Sólo borra recursivamente ficheros del tipo
filename.extension, no borra ni ocultos ni directorios, así
que es muy poco práctico (es una costumbre del MS-DOS, pues
en él todos los ficheros tiene extensión).
Y claro, también está la opción de borrar la
carpeta en vez de su contenido y así no hay problema con el
comodín...
En modo gráfico, si tenemos la opción de mostrar
ficheros ocultos, pues los podremos seleccionar y borrar, si no,
no los borraremos.
$ cp -r /home/pepe/origen/* /home/pepe/destino
Copia recursivamente todos los ficheros y
directorios, excepto los ocultos.
$ cp -r /home/pepe/origen/.* /home/pepe/destino
Ahora surge una pequeña sorpresa, copia todo el
contenido de origen (incluidos ocultos) pero
también el contenido del directorio superior recursivamente
(aunque no crea la carpeta origen puesto que su contenido ya lo
copió). Esto es porque .* significa archivos que empiezen
por punto , el directorio actual (.) y el directorio superior
(..). Con el comando
rm
esto está desactivado
para evitar borrados accidentales, prueba rm -rv .*
y fíjate en la salida del comando.
Por tanto ahora no podemos hacer como antes y usar las dos
órdenes secuencialmente.
$ cp -r /home/pepe/origen/*.* /home/pepe/destino
Solo copia ficheros tipo filename.extension, no copia
ni ocultos ni directorios.
$ cp -r /home/pepe/origen/. /home/pepe/destino
Copia todo el contenido de origen
en destino. Incluso si
destino no existe lo crea. Ahora sí que copia
ocultos, no ocultos y directorios.
También podría hacerlo más fácil copiando la
carpeta entera:
$ cp -r /home/pepe/origen /home/pepe/destino
pero hay veces que en destino hay un
contenido que no queremos borrar y al que le queremos añadir
el contenido de origen.
En modo gráfico, si tenemos puesta la opción de mostrar
ficheros ocultos, pues los podremos seleccionar y copiar, si no,
no los copiaremos.