Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - FranciskoAsdf

#191
Scripting / Re: Comando CALL [BATCH]
22 Septiembre 2009, 16:40 PM
Lo que quiere hacer el (segun lo que entendi) es llamar el archivo de las notas desde cualquier directorio, pero como el lo cambia de directorio el comando falla (segun lo que entiendo en el post), lo que podrias hacer, o por lo menos lo que hago yo en algunos scripts, guardo las rutas en una carpeta temporal o en algun directorio donde no las borren, por ejemplo:

Tienes el archivo notas.bat y quieres llamar el archivo asdf.bat, pero el archivo notas.bat cambia de directorio mas no el archivo asdf.bat que es el que contiene las notas, lo que puedes hacer es guardar la ruta del fichero asdf.bat en un txt o en lo que quieras y llamarlo cada vez que se necesite el archivo Ej:

Archivo rutaguardada.txt

@SET RutaAsdf="%HomeDrive%\Una\Ruta\Cualquiera\asdf.bat"


y eso lo guardas en el directorio temp de windows (%temp%), pero ahora como guardas la ruta sin pedirle datos a usuario? facil
redireccionas el directorio actual al archivo rutaguardada.txt EJ:

Archivo notas.bat (al principio del archivo)

IF NOT EXIST "%Temp%\rutaguardada.txt" (ECHO @SET RutaAsdf="%CD%">"%Temp%\rutaguardada.txt")



y eso, asi mantienes la ruta siempre y solo haces un call para cargar la ruta al principio del archivo notas.bat


Ren "%Temp%\rutaguardada.txt" *.bat
Call "%Temp%\rutaguardada.bat"
Ren "%Temp%\rutaguardada.bat" *.txt



es un poko engorroso, pero a mi me funciona.-


Saludos y espero que te sirva, si no es lo que necesitabas, explicate mejor y te podremos ayudar mas.
#192
Scripting / Re: [AYUDA][BATCH]Funcion Valida Rut
20 Septiembre 2009, 16:08 PM
 :o :o :o :o quede loco xD, osea !
Mi Codigo es algo asi, todo lo que se ve es porke lo estaba probando xD

@echo off

set /P "rut=Ingrese su rut: "
if not defined rut (goto :eof) ELSE (goto :FuncionValidaRut)
:FuncionValidaRut
set "D_Ocho=%rut:~7%"
set "D_Siete=%rut:~6,-1%"
set "D_Seis=%rut:~5,-2%"
set "D_Cinco=%rut:~4,-3%"
set "D_Cuatro=%rut:~3,-4%"
set "D_Tres=%rut:~2,-5%"
set "D_Dos=%rut:~1,-6%"
set "D_Uno=%rut:~0,1%"
ECHO.
ECHO numeros extraidos
echo %D_Ocho% %D_Siete% %D_Seis% %D_Cinco% %D_Cuatro% %D_Tres% %D_Dos% %D_Uno%

:: Multiplicaciones

set /a D_Ocho=D_Ocho*2
set /a D_Siete=D_Siete*3
set /a D_Seis=D_Seis*4
set /a D_Cinco=D_Cinco*4
set /a D_Cuatro=D_Cuatro*6
set /a D_Tres=D_Tres*7
set /a D_Dos=D_Dos*2
set /a D_Uno=D_Uno*3
echo resultado multiplicaciones
Echo %D_Ocho% + %D_Siete% + %D_Seis% + %D_Cinco% + %D_Cuatro% + %D_Tres% + %D_Dos% + %D_Uno%

set /a SumaFinal=%D_Ocho%+%D_Siete%+%D_Seis%+%D_Cinco%+%D_Cuatro%+%D_Tres%+%D_Dos%+%D_Uno%
echo sumafinal
echo %SumaFinal%
echo division de sumafinal por 11
set /a Division=%SumaFinal%/11
echo resultado de la operacion anterior
echo %division%
echo sacamos el resto
set /a resto=%Division%%%11
echo %resto%

echo numero validador
set /a NroValidador=11-%resto%

echo %NroValidador%

IF ["%NroValidador%"]==["10"] (SET "NroValidador=K")
IF ["%NroValidador%"]==["11"] (SET "NroValidador=0")

echo su rut es %rut%-%NroValidador%

Pause
GOTO :EOF


como ves el super rustico xD, ademas de que nunca he sabido como funciona "setlocal enableextensions enabledelayedexpansion", aunque me falta aun filtrar los puntos que pueda ingresar el usuario y varias cosas mas, pero muchas gracias voy a ESTUDIAR tu code, para ver como funciona :)

Saludos y muchas gracias de nuevo!!!!
#193
De nada, pense que no funcionaria, ya que soy un poko rustico para codificar xD, ahora lo del nombre del archivo, podrias usar y mezclar los siguientes comandos:

       %~f1        - regresa la ruta y el archivo de %1.
       %~d1        - regresa la letra de la unidad de %1.
       %~p1        - regresa solo la ruta del archivo %1.
       %~n1        - regresa solo el nombre de archivo %1.
       %~x1        - regresa solo la extension del archivo %1.
       %~s1        - regresa solo la ruta, con directorios, con nombres cortos del archivo %1.
       %~a1        - regresa los atributos del archivo.
       %~t1        - regresa la hora/fecha del archivo %1
       %~z1        - regresa el tamaño del archivo %1.


osea si quiiseras saber la ura y el nombre de un archivo deberia ser algo asi

set "nombrearchivo=%~f1"
pero debes pasarle como variable el nombre del archivo, osea podrias hacer una funcion:

:RutaYNombreDeArchivo
echo %~f1
GOTO :eof


y despues la llamas cuando la necesites

call :RutaYNombreDeArchivo a.txt

algo asi deberia ser ^^

saludos xD estoy en mi trabajo pero es cosa de investigar
:)

#194
Scripting / [SOLUCIONADO][BATCH]Funcion Valida Rut
19 Septiembre 2009, 18:07 PM
Hola a Todos, espero me puedan ayudar en esta ocacion T_T...
Estoy haciendo un programita, en donde cada persona debe entrar con su RUT (Registro Único Tributario.CHILE), pero necesito verificar si el RUT de la persona esta bien escrito o es real,  para eso existe una funcion llamada "Funcion Valida Rut", a mi me la pasaron en Vb6.0, no es muy complicada, pero parece que en batch si xD...

Explico un poko como se valida un RUT...

Por ejemplo tengo los 8 primeros digitos del RUT 11.222.333-?, lo que hace la funcion es extraer desde atras para adelante los 8 primeros digitos y multiplicarlos por numeros específicos por ejemplo:



    1   1   2   2   2   3   3   3  
  * 3   2   7   6   5   4   3   2
  --------------------------------------
    3   2  14  12  10  12   9   6

Los Resultados se Suman y eso da un total

3 + 2 + 14 + 12 + 10 + 12 + 9 + 6 = 68

Despues ese resultado se divide por 11

68 : 11 = 6
2

(El resultado con decimales seria 6,1818181818181818181818181818182, que se aproxima a 2)
EL "RESTO" de la operación se le resta a 11 en este caso seria:

11- 2 = 9


Donde 9 seria el Dígito verificador del RUT.

Ahora, ya se como extraer los primeros 8 numeros que ingresa al usuario, multiplicarlos cada uno, y sumarlos (definitivamente no es para nada dificil hacerlo :)), pero estoy parado en la parte de la division, porque batch solo hace division por numeros enteros, en la division solo me daria el resultado el 6 mas no asi el 2 que es el numero que yo necesito para poder restarlo a 11.-

busque en San Google divisiones con decimales en batch y encontre un par, incluso uno de este foro, pero no supe como adaptarlos a mi code, ademas eran muy largos (con justificada razon supongo, aunque me da lo mismo si es largo o no el code D:) para poder entender lo que hacen, ademas tengo que aproximar la cifra: "6,1818181818181818181818181818182" (tomo el resultado del ejemplo anterior, obviamente esto puede variar) a 2 (se toma del ejemplo anterior), o por lo menos saber el "RESTO" de la operacion como numero entero para poder restarlo a 11, pero ese es mi gran problema, que nose como hacerlo :S, ademas no existe en batch (que yo sepa) una funcion como el "MID" en VB6.0.-

Espero que alguien me pueda ayudar porfavor T_T.-!

De ante mano muchas gracias por las respuestas.-

#195
A ver según  lo que entiendo es que llamas a cada archivo para realizar alguna operación, a mi se me ocurre que podrias hacer un IF EXIST o no? por ejemplo:
nose si funcione solo es una idea nada mas xD (no soy muy bueno con los FOR xD)

set lin=0
for /f "tokens=*" %%a in (Lista.txt) do (
       set /a lin+=1
       call set list!lin!="%%a"
)
:ComprobarExistencia
IF NOT EXIST "%VariableConElNombreDelArchivo%" (SET "hola= %VariableConElNombreDelArchivo%") ELSE (GOTO :SiExiste)
IF NOT EXIST "%hola%" (GOTO :NoExistexD) ELSE (GOTO :ComprobarExistencia)

o algo asi, vas comprobando si existe cada archivo (supongo que seria un poko mas lento el proceso), porke si los tienes en una lista es porque en alguna parte los debes tener almacenados, tonces si no esta el archivo sin espacio, le das el espacio en una variable, y si el resultado es Correcto que haga otra cosa xD, soy medio complicado para dar explicaciones xD pero supongo que se entiende un poco ;S.-

Espero que te sea de ayuda, pero si no nada que hacer, y porfa no me puteen xDDDD

Saludos =)

#196
EN EL ARCHIVO L2:INI de lineage 2 sea cual se su cronica JAMAS NUNCA se guardan datos del jugador como su login o su password, ahi solo se guardan el tamaño de la ventana, que cosas carga el juego y que no, graficas y ese tipo de cosas, para editar ese archivo tienes que buscar el "L2FILEEDIT" para la cronica que necesitas, tu "amigo" parece que estaba un poco equivocado :S.-

saludos y espero haberte sido de ayuda ^^, ademas ese tipo de cosas se guardan directo en le servidor del juego :)
#197
Scripting / Re: Binary Converter By JaAViEr
12 Septiembre 2009, 19:03 PM
lo voy a probar  ^^, de todas maneras gracias :)
EDITO:
Lo probé y este fue el resultado:
USO:


Salida


Lo Estoy usando mal?, porke segun la web "http://www.eztigma.tk/juegos/binary.php" el resultado deberia haber sido el siguente:

"Hola" en binario es igual a:
01101000 01101111 01101100 01100001


porke ahi solo me muestra el espacio :S.-

saludos ^^, si lo use mal porfavor dimelo ^^, aunque no creo porke tomas como entrada a "%1" tonces supongo que se debe usar asi ^^.-
#198
@ECHO OFF
REM ping -n 1 localhost | findstr /R TT > salida.txt
REM intentas que te diga el numero de TTL que salio?
REM set /P variable=<salida.txt
REM estas mandando un comando completo y complejo a la variable por lo que variable queda vacia.-
REM echo %variable%
REM PAUSE

Podrias utilizar algo como lo siguiente, obviamente puedes evitar crear las dos primeras variables, teniendo cuidado de poner el simbolo "^" antes de la | y antes de >

@ECHO OFF
SET "HOLA=ping -1 LOCALHOST"
SET "Comando=FINDSTR.exe ^/R TT ^>salida.txt"
REM SET "AhoraSexD=%HOLA% %COMANDO%"
REM aca el echo es solo para que veas como se van mostrando las variables o como se van ejecutando.-
ECHO %HOLA% %COMANDO%
REM ECHO %AhoraSexD%
%HOLA% | %COMANDO%
PAUSE

PAUSE


Espero que te sirva de algo.

Saludos, si estoy equivocado en algo PORFAVOR corrijanme ^^

PD: NO tomas en cuenta los REM porke mientras lo escribia comentaba algunas cosas que no servian (segun yo)
#199
Scripting / Re: Curso batch para Principiantes
13 Julio 2009, 03:21 AM
muchas gracias!!!!! así se aprende cada día más :P
#200
gracias leonador, espero que me sirva para lo que quiero hacer con unos archivos de texto :D!!!!!

en muy buena hora posteaste la info :D!!!

gracias de nuevo ^^*!