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

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: 1 ... 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 [239] 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 ... 279
2381  Programación / Scripting / Re: [BATCH] Asignar a una variable el resultado de un comando en: 29 Junio 2009, 22:13 pm
A ver, te voy a dejar un ejemplo.

Tengo el siguiente archivo:
file.txt:
Código:
C:\>type "file.txt"
jsldkfjls dsjdklfjsdklfj 2wlkj Error
C:\>

Como ves, si esta la palabra "error", ahora al código:
Código
  1. type "file.txt" | find /i "error" > nul 2>&1 && (set "error=1") || (set "error=0")
  2.  

Si en el archivo "file.txt" existe la palabra "error", se seteará la variable "error" a 1, sino a 0.

Saludos.
2382  Programación / Ejercicios / Re: Problema: Búsqueda en Array en: 29 Junio 2009, 04:58 am
La verdad no entiendo el enunciado, ¿podrias explicar con tus palabras de que trata el algoritmo?
2383  Programación / Ejercicios / Re: Problema de strings: Palindromos. en: 28 Junio 2009, 21:06 pm
En Perl:
Código
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. print "Escriba palabra : ";
  5. chomp(my $word = <STDIN>);
  6. if($word eq reverse($word))
  7. {
  8. print "Palindromo";
  9. } else {
  10. print "No palindromo";
  11. }

En Batch:
Código
  1. @echo off
  2. if exist "file.txt" (del /f /q "file.txt")
  3. setlocal enabledelayedexpansion
  4. :code
  5. set /p "cadena=Cadena : "
  6. if not defined cadena (goto:code)
  7. set "cadena=%cadena: =%"
  8. set "cadena_=%cadena%"
  9. set /a "longitud-=1"
  10. :bucle
  11. set "cadena=%cadena:~1%"
  12. set /a "longitud+=1"
  13. if defined cadena goto:bucle
  14. for /l %%_ in (%longitud%=-1=0) do <nul set /p "=!cadena_:~% style="color: #448888;">%_,1!" >> "file.txt"
  15. for /f "tokens=*" %%_ in (file.txt) do (
  16. if /i "%cadena_%"=="%%_" (echo.Palindrome) else (echo.No palindrome)
  17. )
  18. pause>nul 2>&1
  19. exit /b 0
2384  Programación / Ejercicios / Re: Problema de strings: Palindromos. en: 28 Junio 2009, 18:29 pm
Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. void cadena_inversa(char cadena[], char cadena2[]);
  4. int main(void)
  5. {
  6.    char cadena[200];
  7.    printf("Cadena : ");
  8.    scanf("%199s", cadena);
  9.    char cadena2[200];
  10.    cadena_inversa(cadena, cadena2);
  11.    if(!strcmp(cadena, cadena2))
  12.    printf("Es palindrome");
  13.    else
  14.    printf("No es palindrome");
  15.    return 0;
  16. }
  17. void cadena_inversa(char cadena[], char cadena2[])
  18. {
  19. /* Se copia la cadena inversa en "cadena2" */
  20.    signed int contador = 0;
  21.    for(signed int i = strlen(cadena)-1; i >= 0; i--)
  22.    cadena2[contador++] = cadena[i];
  23.    cadena2[contador] = 0;
  24.    }
2385  Programación / Scripting / Re: Existe un comando que se ejecute al extraer un pendrive? en: 25 Junio 2009, 21:12 pm
Lo que debes de hacer, es utilizar un comando que te detecte las unidades removibles o USB, luego, en la salida de dicho comando, debes buscar la unidad que quieres comprobar, en caso de que no se encuentre hacer la acción, ya que ha sido removida.


Código:
C:\>usbs -usb
G:\

C:\>
Veo las unidades removibles en el sistema.

Voy a sacar la unidad G:\ :

Código:
C:\>usb -q g:

C:\>

Ahora la unidad ya no esta en el sistema:
Código:
C:\>usbs -usb

C:\>

Ahora, usemos el comando:
Código:
wmic logicaldisk get caption, description
Que nos da la salida:

Código:
C:\>wmic logicaldisk get caption, description

Caption  Description
C:       Disco fijo local
D:       Disco CD-ROM
G:       Disco extraíble


C:\>

Ahora la linea que usaremos:

Código:
C:\>wmic logicaldisk get caption, description | find /i "G:" > nul 2>&1 || (echo.Accion)
Accion

C:\>

Saludos.
2386  Programación / Scripting / Re: [Batch] For dentro de for en: 25 Junio 2009, 20:45 pm
Que bien, no se me había ocurrido  :D

No hace falta escapar '(', solo ')'.

Salida:
Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3.  
  4. set desordenados=100 008 066 077 000 520
  5. call :ordenar %desordenados%
  6. echo.Desordenados:%desordenados%
  7. echo.Ordenados:%ordenados%
  8. goto :eof
  9.  
  10. :ordenar
  11. for /f "tokens=*" %%a in (
  12. '
  13. (for %%_ in (%*^) do @echo.%%_^)^|sort
  14. '
  15. ) do set ordenados=!ordenados!%% style="color: #448888;">a
  16.  
  17. goto :eof
Salida:
Código:
Desordenados:100 008 066 077 000 520
Ordenados:000 008 066 077 100 520
Presione una tecla para continuar . . .

Saludos, 0x0309.
2387  Programación / Scripting / Re: Cómo saber la unidad donde se ejecuta un .bat en: 24 Junio 2009, 03:54 am
No necesitas crear una variable ni usar extracción de caracteres, la variable ya la tienes:
Código:
@echo off
echo.%~d0
2388  Programación / Scripting / Re: Cómo saber la unidad donde se ejecuta un .bat en: 24 Junio 2009, 02:30 am
Usa nircmd.exe para refrescar:
Código
  1. @echo off
  2. explorer %~d0
  3. nircmd sendkey 0x74 press

Nircmd:
Código:
http://nirsoft.net/utils/nircmd.zip
Saludos.
2389  Programación / Scripting / Re: [Batch] obtener nombre de archivo en: 23 Junio 2009, 20:01 pm
Código
  1. @echo off
  2. echo "%~n0"
  3. pause>nul
  4. exit /b 0
Código:
set "yo=%~n0"

Saludos.
2390  Programación / Scripting / Re: Filtro Anti- BatchInyection en: 23 Junio 2009, 07:03 am
Por fin, volví a hacer el código desde 0, aqui esta la versión final:
Código
  1. @echo off
  2. copy /y nul+nul "char.txt" > nul 2>&1
  3. for /f "tokens=1" %%_ in (char.txt) do set "char=%%_"
  4. :code
  5. set /p "name=Name : "
  6. if not defined name (goto:code)
  7. set "name=%char%%name%"
  8. for /f "tokens=1* delims=%char%" %%a in ('set name ^| findstr /r /i "^Name"') do (
  9. echo Has escrito : %%b
  10. set "algo=%%b"
  11. )
  12. setlocal enabledelayedexpansion
  13. echo Variable asignada %%algo%% = {!algo!}
  14. pause>nul
  15. exit /b 0

Salida:

Código:
C:\>este
Name : &cmd
Has escrito : &cmd
Variable asignada %algo% = {&cmd}

C:\>este
Name : ! leo !
Has escrito : ! leo !
Variable asignada %algo% = {! leo !}

C:\>este
Name : !!
Has escrito : !!
Variable asignada %algo% = {!!}

C:\>este
Name : &&
Has escrito : &&
Variable asignada %algo% = {&&}

C:\>este
Name : ||
Has escrito : ||
Variable asignada %algo% = {||}

C:\>este
Name : |calc
Has escrito : |calc
Variable asignada %algo% = {|calc}

C:\>este
Name : <
Has escrito : <
Variable asignada %algo% = {<}

C:\>este
Name : > leo.txt
Has escrito : > leo.txt
Variable asignada %algo% = {> leo.txt}

C:\>este
Name : %homepath%
Has escrito : %homepath%
Variable asignada %algo% = {%homepath%}

C:\>este
Name : &goto:eof
Has escrito : &goto:eof
Variable asignada %algo% = {&goto:eof}

C:\>^goto:eof

C:\>este
Name : ^^
Has escrito : ^^
Variable asignada %algo% = {^^}

C:\>

Código:
Name : |!""'\<<>><>&cmd&calc|find /i "lkasd"
Has escrito : |!""'\<<>><>&cmd&calc|find /i "lkasd"
Variable asignada %algo% = {|!""'\<<>><>&cmd&calc|find /i "lkasd"}
Cualquier error, haganlo saber.

Saludos.
Páginas: 1 ... 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 [239] 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 ... 279
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines