sintaxis poner nombres línea largos larga espacios espacio escrita escapar demasiado crear correcta copiar con como comando carpetas blanco batch bat archivos archivo windows

windows - poner - ¿Cómo especifico C: / Archivos de programa sin espacio para programas que no pueden manejar espacios en rutas de archivos?



la línea escrita es demasiado larga la sintaxis del comando no es correcta (14)

Como alternativa a las otras respuestas, puede intentar enlaces simbólicos .

Primero crea el enlace simbólico e instala la aplicación según el enlace. (Dependiendo del caso, esto puede ser mucho más fácil de hacer, por ejemplo, cuando la aplicación tiene n menciones de la carpeta de destino en todo su código)

Un enlace simbólico creará algo similar a un acceso directo a una carpeta, pero visto como una carpeta real por otras aplicaciones.

Así es como lo haces:

  • Ejecute cmd como administrador
  • Usuario este comando: mklink /D "C:/LinkToProgramFiles" "C:/Program Files"

Y luego, comienza a usar "C: / LinkToProgramFiles" en las aplicaciones que no pueden manejar espacios. (Este enlace se puede ver en el Explorador de Windows como una carpeta con el símbolo de un atajo)

Tenga mucho cuidado de no crear enlaces circulares si comienza a jugar demasiado con esto.

Un archivo de configuración necesita la posición de otro archivo,

pero ese archivo se encuentra en "C: / Archivos de programa",

y el camino con espacio no es reconocido

¿Hay alguna otra manera de especificar la ubicación sin espacio en ella?


Creo que la razón por la que aquellos sugirieron usar el nombre C: / PROGRA ~ 1 han recibido votos abajo es porque esos nombres se ven como una característica heredada de Windows mejor olvidada, que también puede ser inestable, al menos entre diferentes instalaciones, aunque probablemente no en el misma máquina

Además, como alguien señaló en un comentario a otra respuesta, Windows puede configurarse para que no tenga los nombres heredados 8.3 en el sistema de archivos.


Creo que las otras publicaciones han respondido a la pregunta, pero solo algunas interesantes para su información (desde el símbolo del sistema):

dir c: / / ad / x

Esto proporcionará una lista de directorios únicos y también proporcionará sus "nombres cortos".


Debería haber una forma de utilizar directamente la ruta completa de los c:/program files . A menudo, implica encapular la cadena entre comillas. Por ejemplo, en la línea de comandos de Windows;

c:/program files/Internet Explorer/iexplore.exe

no iniciará Internet Explorer, pero

"c:/program files/Internet Explorer/iexplore.exe"

será.


El shell de Windows (suponiendo que esté utilizando CMD.exe) utiliza% ProgramFiles% para apuntar a la carpeta Archivos de programa, sin importar dónde se encuentre. Como el abridor predeterminado de archivos de Windows tiene en cuenta variables de entorno como esta, si el programa está bien escrito, debería ser compatible.

Además, podría valer la pena usar direcciones relativas. Si el programa que está utilizando está instalado correctamente, ya debería estar en la carpeta Archivos de programa, por lo que podría consultar el archivo de configuración como. / Archivo_configuración.txt si está en el mismo directorio que el programa, o .. / other_program / config_file.txt si está en un directorio diferente al otro programa. Esto se aplicaría no solo en Windows, sino en casi todos los sistemas operativos modernos, y funcionará correctamente si tiene el cuadro "Iniciar en" correctamente configurado, o si lo ejecuta directamente desde su carpeta.


Intenta rodear el camino entre comillas. es decir, "C: / Archivos de programa / Appname / config.file"


No.

Algunas veces puedes citar el nombre del archivo.

"C:/Program Files/Something"

Algunos programas tolerarán las comillas. Como no proporcionó ningún programa específico, es imposible saber si las cotizaciones funcionarán para usted.


Puede usar los siguientes métodos para especificar C: / Archivos de programa sin espacio en él para programas que no pueden manejar espacios en rutas de archivos:

''Path to Continuum Reports Subdirectory - Note use DOS equivalent (no spaces) RepPath = "c:/progra~1/continuum_reports/" or RepPath = C:/Program Files/Continuum_Reports ''si es para 64 bits. '' Path to Continuum Reports Subdirectory - Note use DOS equivalent (no spaces) RepPath = "c:/progra~2/continuum_reports/" ''or RepPath = C:/Program Files (x86)/Continuum_Reports ''si es para 32 bits.


Puedes intentar usar:

C:/PROGRA~1


Simplemente puede crear una carpeta Archivos de programa en D local o C local para instalar esas aplicaciones que se pueden instalar en un nombre de carpeta que tiene ESPACIOS / Caracteres en él.


Use las siguientes anotaciones:

  • Para " C: / Archivos de programa ", use " C: / PROGRA ~ 1 "
  • Para " C: / Archivos de programa (x86) ", use " C: / PROGRA ~ 2 "

Gracias @lit por tu respuesta ideal en el siguiente comentario:

Utilice las variables de entorno % ProgramFiles% y % ProgramFiles (x86)%

:


Utilice el nombre corto generado (C: / Progra ~ 1) o rodee la ruta con comillas.


deberías poder usar

  • "c: / Archivos de programa" (fíjate en las comillas)
  • c: / PROGRA ~ 1 (la notación de nombre corto)

Pruebe c: /> dir / x (en dos shell)

Esto muestra los nombres cortos generados para nombres de archivo que no sean 8dot3. El formato es el de / N con el nombre corto insertado antes del nombre largo. Si no hay un nombre corto presente, los espacios en blanco se muestran en su lugar.


Nunca codifique esta ubicación. Utilice las variables de entorno %ProgramFiles% o %ProgramFiles(x86)% .

Al especificar esto, cite siempre porque Microsoft puede haber puesto espacios u otros caracteres especiales en ellos.

"%ProgramFiles%/theapp/app.exe" "%ProgramFiles(x86)%/theapp/app.exe"

Además, el directorio puede estar expresado en un idioma que no conoce. http://www.samlogic.net/articles/program-files-folder-different-languages.htm