Copiar archivos.

Hola amigo como estas, mi consulta es la siguiente, me interesa hacer la copia de un archivo por medio de un .bat, tengo algo básico que me copia de una particio a otra como esto:
Copy "C:\prueba.txt" "C:\prueba.txt"
Y funciona perfecto, pero si le digo que lo copie a archivos de programa ahí ya no funciona. Específicamente lo que necesito es copiar un archivo que este en un cd o DVD en alguna carpeta y enviarlo a una carpeta especifica en el disco.
De antemano agradezco la ayuda y estaré pendiente a tu respuesta. Saludos.

1 respuesta

Respuesta
1
Perdona pero en muchos casos lo que resulta más difícil es entender exactamente cual es el problema.
Hablas de copiar de una partición (supongo que es a eso a lo que te refieres aunque se haya escrito "particio") a otra y pones como ejemplo un copy que debería dar el error "No se puede copiar el archivo sobre sí mismo." porque tu ejemplo:
Copy "C:\prueba.txt" "C:\prueba.txt"
Intentaría copiar un archivo sobre sí mismo
Tal vez quieres decir copiar un archivo de una unidad lógica a otra unidad lógica (las unidades lógicas se pueden conseguir con particiones o con dispositivos distintos), en cuyo caso sería:
Copy "C:\prueba.txt" "D:\prueba.txt"
Luego entiendo que dices que lo siguiente no te funciona:
Copy "C:\prueba.txt" "C:\Archivos de programa\prueba.txt"
Si es así, es raro que no te funcione (acabo de probarlo en mi PC y no me da ningún problema). ¿Qué error sale o que te hace pensar que no funciona?
¿O el problema es si haces esa copia desde dentro de un BAT y no directamente? También lo he probado, con éxito, metiendo esto en un BAT:
@echo off
Copy "C:\prueba.txt" "C:\Archivos de programa\prueba.txt"
En la parte específica dices que quieres copiar un archivo que está en una carpeta de un CD o DVD a una carpeta específica del disco duro. Si al CD o DVD se le ha asignado la unidad lógica F (por poner un ejemplo), la carpeta es patata y el archivo es prueba.txt se trataría de copiar F:\patata\prueba.txt por ejemplo a C:\Archivos de programa\prueba.txt. Y la copia directa:
Copy "F:\patata\prueba.txt" "C:\Archivos de programa\prueba.txt"
No te funciona.
He probado todas esas cosas y no me dan ningún problema.
Si te parece intenta decirme, exactamente, que es lo que haces y que errores te da.
Saludos,
GGG
Hola, disculpa mi redacción no me había fijado en los errores por escribir rapido, en resumen, estoy haciendo un TEU integrado con windows 7 SP1, el SP1 beta claro, y le he agregado un pack de aplicaciones, solo que algunas de esas aplicaciones necesitan el famoso crack, medicina, parche o como lo quieras llamar, y en algunos casos es necesario copiar el crack a la carpeta raíz del programa instalado para dejarlo full, ese proceso de copia es el que quiero realizar, es decir, copiar la medicina que esta en el DVD a la carpeta raíz del programa que generalmente es "C:\Archivos de programa\carpeta programa".
Para el ejemplo:
Copy "C:\prueba.txt" "D:\prueba.txt"
me funciona bien, pero si le agrego algun nombre con espacios no me copia el archivo:
Copy "C:\prueba.txt" "D:\carpeta prueba\prueba.txt"
En este caso no me permite copiar por que no reconoce la ubicación debido al espacio entre carpeta y prueba o eso es lo que asumo. Todo esto ejecutado desde un archivo .bat.
El error especifico o más bien general dice algo así: "no se reconoce la ubicación o la sintaxis no es correcta... y algo más que no recuerdo"
Una vez encuentre la forma de hacer que me funcione la copia o tu me facilites un método más eficiente pienso hacer algo así:
Copy "A:\carpeta\otra carpeta\prueba.txt" "C:\Archivos de programa\carpeta programa\archivo a copiar"
cls
Copy "B:\carpeta\otra carpeta\prueba.txt" "C:\Archivos de programa\carpeta programa\archivo a copiar"
cls
Y así sucesivamente hasta completar el abecedario, esto lo hago por que no en todos los equipos se usa la misma letra para la unidad de CD/DVD.
Espero haberme expresado mejor y que me puedas echar una mano con esto.. de nuevo muchas gracias.
Saludos.
Queda claro.
Lo extraño es que no te funcione la copia tal como la escribes. Precisamente la utilización de comillas en el comando debería servir para no tener problemas con los espacios de los nombres de las carpetas. Claro que estoy hablando de Windows XP, no de Windows 7. No tengo ningún PC con Windows 7 en el que poder probar pero sería raro, creo yo, que fallara en ese aspecto.
Si ejecutas el comando a mano, sin estar dentro de un BAT, ¿te funciona bien? Te sugiero que crees un archivo en una carpeta cualquiera y lo copies a la carpeta "Archivos de Programa" con la sintaxis indicada para ver si el problema es, efectivamente, el nombre de la carpeta de destino o hay algún otro problemilla distinto que estamos pensando que tiene que ver con el espacio en el nombre y no es ese el problema.
Por más pruebas que hago yo no consigo que me dé ningún error. Por ejemplo, acabo de crearme una carpeta con el nombre "carpeta prueba". Si ejecuto el comando:
copy kk.txt carpeta prueba
Me dice "La sintaxis del comando no es correcta" (al haber quitado las comillas)
Pero si ejecuto el comando
copy kk.txt "carpeta prueba"
Me hace la copia perfectamente.
Revisa el nombre de la carpeta destino, no vaya a ser que no sea exactamente el nombre que crees y cuéntame lo que sea.
Saludos,
GGG
Hola de nuevo, muchas gracias por la ayuda prestada, al final pude darme cuenta del error, la función de copia estaba funcionando bien solo que estaba intentando copiar a la carpeta "Archivos de programa" por que así la muestra windows pero el nombre real de la carpeta es "Program files" y solo se ve en las propiedades de la carpeta.. al fin se soluciono, muchas gracias por la ayuda.
Saludos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas