Bat que copie y mueva archivos con parametros
Publicado por rubens (4 intervenciones) el 19/02/2017 19:25:46
Hola, necesito ayuda con un .bat, a ver si podeis ayudarme
Tengo que hacer un .bat el cual reciba 3 parametros, si recibe más o menos parametros dará error y finalizará, y si el número de parámetros es correcto hará una de las siguientes opciones en función del tercer parámetro.
Si el tercer parametro vale copiar se copiará el fichero indicado como primer parametro al directorio indicado como segundo parametro. Se debe comprobar antes que el fichero y directorio existen, sino es así dará error y finalizara.
La siguiente opción es lo mismo que antes pero ahora con el valor mover, y por último si el tercer parametro no vale ninguna de las dos opciones anteriores error, indicando que la sintaxis no es correcta.
Cada vez que lo ejecuto me hace esto si le pongo copiar o mover.
1 archivo(s) copiado(s)
La sintaxis del comando no es correcta.
La sintaxis no es correcta
Así lo tengo ahora mismo, y no se donde estoy fallando. Lo que si parece hacer bien es el if not
Código:
Gracias
Tengo que hacer un .bat el cual reciba 3 parametros, si recibe más o menos parametros dará error y finalizará, y si el número de parámetros es correcto hará una de las siguientes opciones en función del tercer parámetro.
Si el tercer parametro vale copiar se copiará el fichero indicado como primer parametro al directorio indicado como segundo parametro. Se debe comprobar antes que el fichero y directorio existen, sino es así dará error y finalizara.
La siguiente opción es lo mismo que antes pero ahora con el valor mover, y por último si el tercer parametro no vale ninguna de las dos opciones anteriores error, indicando que la sintaxis no es correcta.
Cada vez que lo ejecuto me hace esto si le pongo copiar o mover.
1 archivo(s) copiado(s)
La sintaxis del comando no es correcta.
La sintaxis no es correcta
Así lo tengo ahora mismo, y no se donde estoy fallando. Lo que si parece hacer bien es el if not
Código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@echo off
:Inicio
set a=copiar
set b=mover
if #%3# == #%a%# goto copiar
if #%3# == #%b%# goto mover
if not #%3# == ## goto error
:copiar
xcopy %1 %2 /r /s
:mover
move %1 %2 /r /s
:error
echo La sintaxis no es correcta
:fin
Gracias
Valora esta pregunta


0