BandaAncha.eu

  • 🔍 en 📰 artículos ⏎
  • 🔍 en 💬 foros ⏎
  • 🔍 en 👇 este 💬 foro ⏎
  • 🔍 en 👇 este 💬 tema ⏎
Regístrate Regístrate Identifícate Identifícate

Al escribir nombre de fichero txt me abre un exe con el mismo nombre

easton

¿Qué comando hace esto en MSDOS? Por ejemplo si hay 3 archivos:

  • prueba2.nfo
  • prueba2.exe
  • prueba2.txt

Todos se llaman igual pero quiero abrir el txt, y siempre me abre el .exe, aunque ponga el nombre completo: prueba2.txt.

Nixie
5

En MSDOS no se abrían los ficheros escribiendo su nombre, desde la línea de comandos únicamente se pueden ejecutar programas. Al teclear prueba2.txt ejecutas el programa "prueba2" y le pasas como parámetro ".txt".

Para abrir el .txt tienes que ejecutar un editor de textos y abrir el fichero, ya sea desde su interfaz o pasándolo como parámetro, por ejemplo "edit prueba2.txt" te abriría el editor con el texto cargado. También podrías poner "type prueba2.txt" que te vuelca el fichero por la consola. Si te refieres al cmd en Windows, edit ya no existe, puedes usar notepad en su lugar que te abrirá el bloc de notas "notepad prueba2.txt" o bien "start prueba2.txt" que abrirá el fichero con el programa que tenga asociado Windows (para .txt el bloc de notas).

Fassou

Seguramente es porque no lo encuentra, y tira de la búsqueda y se topa con la aplicación que lleva ese nombre.

Por consola ( cmd ), debes ir hasta la carpeta donde está el archivo, o indicarla junto al nombre del fichero como parámetro como te indica @Nixie

Salu2!

🗨️ 1
Black Hole

Pero entonces ya no sería MS-DOS. El Símbolo de sistema que activa una consola de interfaz de comandos, NO es MS-DOS aunque la gente siga usando incorrectamente ese nombre…

naveganteperdido

que comando estas usando? que linea de comandos estas usando? que quieres hacer? qual es el contenido del exe y del txt? en que directorio se encuentran el exe i el txt? qual es el valor de la variable de entorno path? desde que directorio ejecutas el comando? si quieres ver el contenido del archivo txt "more prueba2.txt"

y por ultimo, lo que hace el exe es ejecutar notepad prueba2.txt?

P B Fierro

Si estás usando el cmd de Windows el comando para abrir el txt sería: notepad prueba2.txt

(suponiendo que estás en la misma carpeta o directorio que el archivo .txt)

Black Hole
1

¿En qué entorno estás intentando realizar las pruebas que has descrito en tu mensaje inicial? Porque el comportamiento en el símbolo de sistema NO es el mismo que el comportamiento que existiría en un MS-DOS clásico de verdad, anterior al Windows. El proceso CMD que permite invocar programas desde la línea de comandos, NO tiene nada que ver con el MS-DOS original, aunque por desconocimiento, y por el hecho de que sea una pantalla negra con letras blancas (aunque los colores sean configurables), muchísima gente siga usando incorrectamente el término MS-DOS.

Supongo que estás usando el símbolo de sistema bajo Windows. Aún así, el comportamiento ha ido variando con el tiempo. Tampoco se comporta exactamente igual CMD bajo Windows 95/98 que en posteriores Windows 2000/XP/Vista. En Windows 7 se introdujeron cambios significativos, y ha ido cambiando ligeramente en Windows 10 y Windows 11. Pero el problema que describes no debería ocurrir en ninguno de ellos; acabo de realizar a propósito una prueba en mi equipo usando los nombres que has escrito, y solo prueba.exe lanza el ejecutable.

En la actualidad existe una variable de entorno llamada PATHEXT que contiene las extensiones de fichero que el sistema operativo reconoce como código ejecutable. En un Windows 10 por defecto, éstas son: .EXE, .BAT, .CMD, .VBS, .VBE, .JS, .JSE, .WSF, .WSH y .MSC. Cada una lanza diferentes procesos que gestionan dicho código. Como ves, no se incluyen ni .NFO ni .TXT entre ellas.

¿Por qué en un Windows actual correctamente configurado, cuando tecleamos prueba.txt nos lanza por defecto el Bloc de Notas? Esta información se guarda dentro del registro de Windows, exactamente en el árbol \HKEY_CLASSES_ROOT a nivel global del equipo, y luego puede tener modificaciones por usuario que se guardan en la rama \HKEY\CURRENT_USER\SOFTWARE\Classes. Existe un comando en el Símbolo de sistema llamado ASSOC que lista la aplicación asociada a cada extensión, y podemos cambiarla de forma fácil con la sintaxis ASSOC .ext="ruta_del_ejecutable.exe". Además desde el Panel de Control o desde la moderna Configuración que lo sustituye, hay opciones para hacerlo en la sección "Aplicaciones > Aplicaciones predeterminadas > Elegir aplicaciones predeterminadas por tipo de archivo".

En el caso de los ficheros .txt, ASSOC devuelve .txt=txtfile en vez de la ruta exacta del Bloc de Notas. Esto es así porque el registro guarda información adicional para el tipo genérico de fichero "txtfile" en la rama \HKEY_CLASSES_ROOT\txtfile como iconos, y diversas opciones contextuales para el botón derecho del raton en el Explorador de Windows. Si tu Windows no realiza este proceso, es que algún software ha modificado los valores predeterminados del sistema. Lo que te está pasando no es el comportamiento normal, tal vez esté infectado por malware. El que cualquier extensión pueda ejecutar código, sería un riesgo grave de seguridad.

Existen programas que devuelven la configuración predeterminada, pero nunca los he probado. Una búsqueda rápida por Google me devolvió por ejemplo éste.