Veamos cómo borrar en GNU/Linux un archivo en el que el nombre comienza con dos guiones (por ejemplo –help) desde una consola

Nunca se me había ocurrido, pero puede ocurrir, que estemos en nuestro sistema GNU/Linux en una terminal y queramos borrar (o cambiar de nombre) un archivo que tiene por nombre –help
Ejecuta:
$ echo "hola mundo" > --help
Ya tienes tu archivo precedido con dos guiones. Prueba ahora a borrarlo, cambiarle el nombre o simplemente ver qué contiene con cat, vim, nano o como quieras y verás qué sucede.
Los comandos para hacer eso, seguro que los conoces. Para borrar utilizaremos el comando rm y para cambiar de nombre usaremos el comando mv
$ rm archivo.txt
$ mv archivo.txt archivo.md
Pero como también sabes, cada comando tiene unas opciones que se anteponen con un guión (-) para los formatos cortos y dos guiones (–) para formatos largos.
Ahora imaginemos que queremos borrar un archivo que precisamente comienza su nombre con dos guiones (–) y que para más intríngulis se llama –help
Al ejecutar los comandos, estos de forma predeterminada entienden lo siguiente como una opción no como el nombre del archivo, debido a los dos guiones con los que comienza el texto.
Si tenemos acceso a una interfaz gráfica, lo más sencillo sería abrir nuestro gestor de archivos y eliminarlo sin más o cambiarle el nombre, pero ¿qué pasa si solo tenemos una terminal?
Como dice el mantra: «If there’s a shell, there’s a way». Qué más o menos traducido significa, que una terminal nos sacará de todos los apuros (o así…)
Tanto si el nombre comienza con uno o dos guiones, si queremos borrarlo, cambiarle el nombre, o cualquier otra cosa que queramos hacer con él, lo podremos hacer con varias opciones:
- anteponiendo al nombre ./
- anteponiendo al nombre —
- declarando la ruta completa del archivo
Y con cualquiera de esas opciones conseguiremos nuestro propósito. Veamos ejemplos con nuestro ejemplo de archivo llamado –help que está en nuestro /home
Podremos ver el contenido de ese archivo con cualquiera de estas opciones, como hemos visto antes:
$ cat ./--help
$ cat -- --help
$ cat /home/tu_usuario/--help
Y de igual manera si queremos eliminarlo:
$ rm ./--help
$ rm -- --help
$ rm /home/tu_usuario/--help
Ahora sí que dominamos un poco más la terminal de nuestra distribución GNU/Linux. Y podremos proponer un pequeño reto a alguien que esté aprendiendo.
Fuente del artículo:

Muy curioso. Lo de la ruta completa ya se me habría ocurrido. Uso mucho las rutas completas y algo menos los ./ . Respecto al mantra “If there’s a shell, there’s a way” yo lo traduciría más como «Si hay un cascarón, hay un camino» ya que un cascarón ha de tener alguna forma de ser atravesado.
bueno, lo del mantra era una broma, sé que se puede traducir por: «si hay una consola, hay una manera» aduciendo a la posibilidad de mantener sistemas *nix mediante el acceso a una terminal del sistema… 😉
Saludos!!
En el título escribiste una a de más «una archivo».
siempre se cuela algún error! 🙂
Gracias, eso significa que lo has leído con interés!!
Saludos…