elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 1 [2] 3
11  Programación / Scripting / Re: Detectar correctamente unidad de un pendrive en: 23 Diciembre 2012, 22:48 pm
asi tampoco..... le di vuelta el orden de las letras pensando que si buscaba al reves tengo mas chances ya que el pendrive siempre se ubica ultimo en la lista de unidades

for %%i in (Z Y X W V U T S R Q P O N M L K J I H G F E D C) do (if exist "%%i:\INS\NINFUS" set "DRIVE=%%i:")
12  Programación / Scripting / Re: Detectar correctamente unidad de un pendrive en: 23 Diciembre 2012, 22:43 pm
si abris la compactera  lo podes probar facilmente, ahora mismo estoy haciendo eso pero no hay caso con los >null no sale...
13  Programación / Scripting / Re: Detectar correctamente unidad de un pendrive en: 23 Diciembre 2012, 22:32 pm
chan! falla
sino algun otro metodo para detectar cual es la letra de mi unidad de pendrive, o sea que solo liste las unidades activas y luego las compare para ver si coinciden y de esa manera determine la unidad correcta evitando errores
como seria un codigo asi?
14  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 23 Diciembre 2012, 19:27 pm
listo tema abierto, sigue fallando...

http://foro.elhacker.net/scripting/detectar_correctamente_unidad_de_un_pendrive-t379149.0.html
15  Programación / Scripting / Re: Detectar correctamente unidad de un pendrive en: 23 Diciembre 2012, 19:25 pm
probe con
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (if exist "%%i:\INS\NINFUS" set "DRIVE=%%i:")>NUL 2>&1

pero con la compactera abierta dice "No hay disco en la unidad, Inserte un disco en la unidad"

alguna otra forma de hacerlo?
necesito detectar cual es la letra de unidad de mi pendrive independientemente si las compateras estan abiertas o hay lectores de multimemorias vacios
16  Programación / Scripting / Detectar correctamente unidad de un pendrive en: 23 Diciembre 2012, 19:22 pm
Buen dia Segadorfelix! no se si corresponde en este foro, pero ya que estuviste viendo el codigo de arriba te queria preguntar.
el diguiente pedacito del codigo es para determinar en que unidad se ecuentra mi pendrive

codigo:
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (if exist "%%i:\INS\NINFUS" set "DRIVE=%%i:")

anda muy bien, solo que si dejo una compactera abierta o hay una lectora de multimemoria, me tira el error "unidad no esta lista" o algo asi. doy enter y luego sigue.
Con el uso de 2>nul se puede omitir ese error o hay algun otro metodo de deteccion?
 190.8.59.170
Segadorfelix

 Conectado

Mensajes: 81




 
   Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #231 en: Hoy a las 15:13 »

Pues, lucaslopezld123 creo que se puede, pero me parece mas adecuado utilizar este metodo, oculta cualquier tipo de salida

Código:
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (if exist "%%i:\INS\NINFUS" set "DRIVE=%%i:")>NUL 2>&1
Saludos
17  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 23 Diciembre 2012, 15:03 pm
Buen dia Segadorfelix! no se si corresponde en este foro, pero ya que estuviste viendo el codigo de arriba te queria preguntar.
el diguiente pedacito del codigo es para determinar en que unidad se ecuentra mi pendrive

codigo:
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (if exist "%%i:\INS\NINFUS" set "DRIVE=%%i:")

anda muy bien, solo que si dejo una compactera abierta o hay una lectora de multimemoria, me tira el error "unidad no esta lista" o algo asi. doy enter y luego sigue.
Con el uso de 2>nul se puede omitir ese error o hay algun otro metodo de deteccion?
18  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 23 Diciembre 2012, 02:51 am
MAESTRO!!!!!!!!!!
ALGUNAVEZ TE DIJERON QUE SOS MUY, PERO MUY GROSO!!!??
muchisimas gracias quedo perfecto!

me encantaria saber que es eso de "2>NUL"

un genio total usted! jeje :D
19  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 22 Diciembre 2012, 16:40 pm
quiero eliminar las ultimas dos lineas, ahora si funciona, pero luego todo el codigo en adelante no puede encontrar la ruta especificada.
que estoy haciendo mal?

aqui esta el codigo

Código:
@ECHO OFF
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\INS\NINFUS set DRIVE=%%i:
ECHO INICIALIZANDO
For /l %%A in (1,1,3) do (<nul (SET/p z=.) & >nul ping 127.0.0.1 -n 2 )
%DRIVE%\Ins\reg\registros.exe
%DRIVE%\Ins\reg\Launcher.exe
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /f "tokens=1,2,3* delims=." %%a IN ('ver') DO (
SET WVer=%%a
SET WVer=!WVer:~-1!
SET WVer=!WVer!.%%b.%%c
SET WVer=!WVer:]=!
)
IF DEFINED ProgramFiles(x86) (
SET OSBit=64bits
) ELSE (
SET OSBit=32bits
)
set hora=%time%
SET DIA=%DATE%
@ECHO %DIA%>>%DRIVE%\ReporteINS.txt
@echo %COMPUTERNAME%>>%DRIVE%\ReporteINS.txt
@ECHO %OS% %osbit% ver%WVer%>>%DRIVE%\ReporteINS.txt
@echo Comenzo= %hora:~0,8%>>%DRIVE%\ReporteINS.txt
@ECHO Instalacion Incompleta>>%DRIVE%\ReporteINS.txt
@echo ------------------->>%DRIVE%\ReporteINS.txt
pause
set hora=%time%
Call :TEXTMAN L- 2 "%DRIVE%\ReporteINS.txt"

@echo Termino= %hora:~0,8%>>%DRIVE%\ReporteINS.txt
@echo Modo Automatico>>%DRIVE%\ReporteINS.txt
@echo ------------------->>%DRIVE%\ReporteINS.txt

Pause&Exit

::---------------------------------------------------------------------------
:TEXTMAN
:L-
(FOR /F %%X IN ('TYPE "%~3"') DO (CALL SET /A "TOTAL_LINES+=1")) & (CALL SET /A "TOTAL_LINES-=%~2-1") & (For /F "usebackq tokens=*" %%@ in ("%~3") DO (Call Set /A "LINE+=1" & Call echo "%%LINE%%"|@FIND "%%TOTAL_LINES%%" >NUL) && (CALL :RENAMER "%~3" && GOTO:EOF) || (Echo %%@ >> "%~nx3.NEW"))
:RENAMER
(REN "%~1" "%~nx1.BAK") & (MOVE /Y "%~nx1.BAK" "%TEMP%\" >NUL) & (REN "%~nx1.NEW" "%~nx1") & (GOTO:EOF)
::---------------------------------------------------------------------------
20  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 16 Diciembre 2012, 22:17 pm
@lucaslopezld123

Unos comentarios más arriba te explico cual es el código que debes usar.

El archivo textman es ese, es una subrutina y se debe pegar al final de tu script batch.

Exactamente lo que debes usar, como ya te expliqué, es esto:
Código
  1.    @Echo OFF
  2.  
  3.     REM con este comando cortas las 2 últimas lineas de archivo.txt
  4.    Call :TEXTMAN L- 2 "Archivo.txt"
  5.    REM aquí el resto de tu código
  6.    Pause&Exit
  7.  
  8.  
  9.  
  10.  
  11.     REM esta parte del código la dejas abajo del todo del script
  12.    ::---------------------------------------------------------------------------
  13.    :TEXTMAN
  14.    :L-
  15.    (FOR /F %%X IN ('TYPE "%~3"') DO (CALL SET /A "TOTAL_LINES+=1")) & (CALL SET /A "TOTAL_LINES-=%~2-1") & (For /F "usebackq tokens=*" %%@ in ("%~3") DO (Call Set /A "LINE+=1" & Call echo "%%LINE%%!!|@%%TOTAL_LINES%%" >NUL) && (CALL :RENAMER "%~3" && GOTO:EOF) || (Echo %%@ >> "%~nx3.NEW"))
  16.    :RENAMER
  17.    (REN "%~1" "%~nx1.BAK") & (MOVE /Y "%~nx1.BAK" "%TEMP%\" >NUL) & (REN "%~nx1.NEW" "%~nx1") & (GOTO:EOF)
  18.  

Saludos

Hola Muchas gracias por el aporte, consulta
es posible que el codigo tenga algun fallo? no hace lo esperado
elimina 4 lineas y mientras lo hace dice "...no puede encontrar la ubicacion"
la ruta y nombre esta ok de hecho escribe los datos, solo que no borra lo que deberia.
Gracias
Páginas: 1 [2] 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines