On 7 jul, 10:48, "kazabeDEL...@gmailDELETE.com" <kaz...@gmail.com>
wrote:
> Holas.
>
> Debido a problemas que se presentan en una aplicacion local que
> tenemos en la empresa, hemos tenido que cambiar el proceso de
> instalacion, realizando el reemplazo de unos archivos de
> configuracion, y editando otros.
>
> Estoy buscando la manera de realizar ese proceso de manera
> automatica; *ya puedo hacer por medio de un script sencillo .bat que
> despues de ejecutar el instalador se reemplacen automaticamente los
> archivos necesarios; Pero aquellos que no debo reemplazar sino
> simplemente editarlos para modificarles un par de lineas, ahi si me
> toca hacerlo manualmente todavia.
>
> Como puedo automatizar este ultimo paso? *Lo unico que necesito es en
> dos archivos de texto, buscar una frase y reemplazarla por otra, pero
> de manera automatica.
>
> Como puedo hacer eso?
>
> Gracias de antemano por su colaboracion
>
> saludos
Con Sed (originaria de Unix, pero con ports Win32) o con GSar (Win32
nativo). Te doy un ejemplo con Gsar:
http://gnuwin32.sourceforge.net/packages/gsar.htm
Esto cambia la ocurrencia de la palabra FILIAL por el parámetro %1%
que le pasemos a Cambiar.Bat
Cambiar BAT
gsar -o -sFILIAL -r%1% Conexion.bat
Conexion.BAT
@ECHO OFF
@ECHO ESTABLECIENDO UNA CONEXION...
@ECHO INTENTANDO ESTABLECER LA CONEXION...
@VPNCLIENT CONNECT "VPN" > Log.Txt
REM VERIFICAR EL ERRORLEVEL LUEGO DE INTENTAR ESTABLECER LA CONEXIÓN.
IF NOT ERRORLEVEL 200 GOTO FAILED
REM EL CLIENTE RETORNA UN ERRORLEVEL = 200 SI LA CONEXIÓN SE
ESTABLECIÓN SATISFACTORIAMENTE.
REM SI LLEGÓ HASTA AQUÍ, LA CONEXIÓN ESTÁ ESTABLECIDA, EJECUTAR EL
RELEVAMIENTO O CUALQUIER OTRO SCRIPT.
@ECHO AGUARDE... REALIZANDO EL RELEVAMIENTO DE HARDWARE Y SOFTWARE DE
SU PC.
@del c:\windows\mvpcinfo.ini
@mvpcinfo.exe -log -cfg".\pcinfohw.cfg" -rt".\templhw.csv" -s -d"\
\10.FILIAL.0.41\aplic\aplic\inventario\Hardware\"
@del c:\windows\mvpcinfo.ini
@mvpcinfo.exe -log -cfg".\pcinfosw.cfg" -rt".\templsw.csv" -s -d"\
\10.FILIAL.0.41\aplic\aplic\inventario\Software\"
GOTO END
:FAILED
CLS
@ECHO ERROR EN LA CONEXION.
:END
CLS
EXIT
Espero te sirva.
Luis García Bustos
http://luisgarciaar.blogspot.com