[BATCH] SOY NUEVO Y ME GUSTARIA QUE ME AYUDARAN,POR FAVOR

Iniciado por awell184, 1 Agosto 2012, 13:51 PM

0 Miembros y 1 Visitante están viendo este tema.

awell184

Estimados amigos necesito hacer una rutina .bat para borrar y copiar unos archivos que tengo en c:,por favor seria de mucha ayuda.

Para un trabajo, la verdad es que lo he tratado de hacer varias veces y no me sale.
Se trata de borrar 2 archivos  que estas en un sistema operativo Windows seven  de 32 bit en el disco C.
Uno esta ubicado en C: en carpetas HYW_Data se llama el archivo HYWc.dat que tengo que borrar
La otra carpeta esta ubicada también en C: en el directorio WINDOWS dentro de otra carpeta llamada SYSTEM32 el archivo a borrar es mg16.dll

La otra rutina que necesito es Copiar y colocar algún atributo solo lectura
Los nuevos archivos que están en c: en una carpeta llamada Lekarstvo
Dentro de esta carpeta están los archivos HYWc.dat  y  mg16.dll
Copiar  archivo HYWC,data  lo quiero dejar en la carpeta HYW_Data que esta en C:
Copiar el archivo mg16.dll y lo quiero dejar en la carpeta MCHYW que esta en C:
seria de mucha ayuda.
y gracias por su tiempo.
esto es lo que tengo:
E
Código (dos) [Seleccionar]
@ echo off
:menu
cls
color A
echo **********************************************************
echo ******    PROGRAMA DE INSTALACION  ********
echo 1.- BORRAR ARCHIVOS
echo 2.- AGREGAR ARCHIVOS con atributos
echo 3.- REINICIAR EQUIPO
echo 4.- salir del menu
echo
echo **************   ******************   ********************
echo.
echo.
set /p ver=que desea hacer..?
if %ver%==1 goto BORRAR ARCHIVOS
if %ver%==2 goto AGREGAR ARCHIVOS
if %ver%==3 goto REINICIAR EQUIPO
if %ver%==9 goto salir
cd..
cd..
cls
:borrar
color A
echo precione enter para continuar
pause >nul
cd..
cd..
title borrar archivos
color A
:borrar archivos
color A
del c:\windows\System32\"mg16.dll" /f /q
del c:\HYW_Data\"hywc.dat" /f /q
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:agregar archivos
color A
COPY "c:\MCHYW\Lekarstvo hywc.dat" "c:\HYW_Data Hywc.dat"
COPY "c:\MCHYW\Lekarstvo mg16.dll" "c:\MCHYW\Lekarstvo"
echo.
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:salir
exit.






MOD: Los códigos deben ir con etiquetas.

Duning

Pon el código en code...

y otra cosa, creo que las etiquetas están mal... no creo que puedan tener espacios, prueba así

Código (dos) [Seleccionar]

@echo off
:menu
cls
color A
echo **********************************************************
echo ******    PROGRAMA DE INSTALACION  ********
echo 1.- BORRAR ARCHIVOS
echo 2.- AGREGAR ARCHIVOS con atributos
echo 3.- REINICIAR EQUIPO
echo 4.- salir del menu
echo
echo **************   ******************   ********************
echo.
echo.
set /p ver=que desea hacer..?
if %ver%==1 (goto :BORRAR_ARCHIVOS)
if %ver%==2 (goto :AGREGAR_ARCHIVOS)
if %ver%==3 (goto :REINICIAR EQUIPO)
if %ver%==9 (goto :salir)
cd..
cd..
cls
:borrar
color A
echo precione enter para continuar
pause >nul
cd..
cd..
title borrar archivos
color A
:BORRAR_ARCHIVOS
color A
del c:\windows\System32\"mg16.dll" /f /q
del c:\HYW_Data\"hywc.dat" /f /q
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:AGREGAR_ARCHIVOS
color A
COPY "c:\MCHYW\Lekarstvo hywc.dat" "c:\HYW_Data Hywc.dat"
COPY "c:\MCHYW\Lekarstvo mg16.dll" "c:\MCHYW\Lekarstvo"
echo.
echo.
echo precione enter para regresar al menu
pause >nul
goto menu
:salir
exit.


Falta:
:REINICIAR EQUIPO

No se donde lo querrás poner, pero te digo que no soy ningun experto en batch, porbablemente tenga fallos y tal e.e

Lo unico que cambie fueron las etiquetas y el IF

awell184

#2
mi amigo, gracias pero  una de ella no se ejecuta los cambios dice al borrar ACCESO DENEGADO en la rutina    del c:\windows\System32\"mg16.dll" /f /q tendre que tener un permiso como administrador por que el archivo que necesito borrar esta en la carpeta del sistema operativo...?
y al agregar los 2 archivos EL SISTEMA NO PUEDE ENCONTRAR EL ARCH.ESPECIFICADO
hay algun comando para reiniciar el equipo, ademas no tengo idea .. en esto.!!

Eleкtro

#3
Esto debería arreglar el problema de la eliminación de los archivos:
Código (dos) [Seleccionar]
Takeown /F "%WINDIR%\System32\mg16.dll"
Icacls "%WINDIR%\System32\mg16.dll" /Grant "%USERNAME%":(F)
del /f /q "%WINDIR%\System32\mg16.dll"
del /f /q "%HOMEDRIVE%\HYW_Data\hywc.dat"


Y sobre el problema del copiado, El error es porque las rutas no existen, Escríbelas bien.
Fíjate, Le quitaste el slash que he resaltado en verde:

Copy "c:\MCHYW\Lekarstvo\hywc.dat" ...
Copy "c:\MCHYW\Lekarstvo\mg16.dll" ...

Código (dos) [Seleccionar]
COPY "c:\MCHYW\Lekarstvo\hywc.dat" "c:\HYW_Data\"
COPY "c:\MCHYW\Lekarstvo\mg16.dll" "c:\MCHYW\Lekarstvo\"


Saludos








awell184

#4
dice error el uruario que a iniciado secion altulmente
no tiene privilegio de propiedad del archivo

Takeown /F "%WINDIR%\System32\mg16.dll"
Icacls "%WINDIR%\System32\mg16.dll" /Grant "%USERNAME%":(F)
del /f /q "%WINDIR%\System32\mg16.dll"
del /f /q "%HOMEDRIVE%\HYW_Data\hywc.dat"


de todas maneras gracias por tu tiempo , amigo


MOD: Es el segundo aviso, los códigos van en sus respectivas etiquetas.

awell184

GRACIA MUCHAS GRACIAS...!!
Logre hacer esta rutina..
saludos a todos ahora seré uno mas en este foro..
me encanta la vida y esta r en este for.. saludos y buena suerte en la vida,buenas vibras.. para todos..!!
>:D >:D >:D >:D >:D >:D

awell184

#6
ahora se podrá hacer y ejecutar esta rutina en windows 7 64 bit
tengo problema con los archivos ejecutable .exe y mg16.dll

Eleкtro

busca la dll en la carpeta Syswow64

Código (dos) [Seleccionar]
Takeown /F "%WINDIR%\Syswow64\mg16.dll"
etc...








awell184

ademas tengo que ejecutar un archivo llamado MCHYW.exe pero me acusa que es de x86 y no se puede ejecutar en win7 de 64 bit q esta c en la carpeta Lekarstvo y  sub.carpeta MCHYW

Eleкtro

Cita de: awell184 en 26 Septiembre 2012, 12:18 PM
ademas tengo que ejecutar un archivo llamado MCHYW.exe pero me acusa que es de x86 y no se puede ejecutar en win7 de 64 bit q esta c en la carpeta Lekarstvo y  sub.carpeta MCHYW

No tiene solución, el exe no es compatible con arquitectura de 64 Bit.

saludos.