Estoy intentando crear un fichero .cmd y cuando quiero copiar un archivo con una ruta relativa de origen a otra ruta absoluta de destino no me crea al fichero.
Ej:
xcopy "DatosPC.cmd" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\DatosPC.cmd"
Con rutas absolutas si funciona. Pero lo necesito la ruta de origen en ruta relativa.
Un saludo.
XD xcopy es para directorios
la sintaxis es basicamente asi
copy DatosPC.cmd C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\DatosPC.cmd
e importante tener permisos de administrador elevado ejecutando cmd bajo windows ( que ya no es un msdos eh )
¿Con qué usuario lo ejecutas? ¿Con qué permisos? Probablemente al incluir la ruta relativa el terminal que lo ejecute no esté en la misma ruta, añade un CD delante para posicionarlo.
Por ejemplo
cd C:\tmp\script\
xcopy "DatosPC.cmd" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\DatosPC.cmd"
#1 Crea un .cmd y dentro metes esta linea:
xcopy "%d0DatosPC.cmd" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp"
Mientras tengas en el mismo directorio el DatosPC.cmd que el cmd que ejecuta esta orden ya lo tienes.
Edit: entre el % y el d0 va un ~ que no aparece.
Opino como nerkaid. Primero en el BAT posicionate en la carpeta donde está ese fichero, usando cd. Si no el xcopy lo intentará buscar desde el path original que hay al ejecutar el bat.
Me doy cuenta que si lo ejecuto normal con ruta relativa:
Aparece la venta na de CMD ejecutándose desde la dirección de la carpeta donde esta el archivo. Y me dice acceso denegado.
Pero si lo ejecuto en modo administrador se ejecuta desde c:\windows\system32 dando un error y cerrándose el símbolo de sistema si se usan rutas relativas.
¿Hay alguna orden para que en el archivo bat o cmd cambie la ruta de ejecución desde la carpeta actual, cuando lo ejecuto en modo administrador ?
#5 Lo he probado y no funciona.