elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
14 Febrero 2012, 08:06  

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez.)
| | |-+  Acciones sobre archivos de texto. [Batch]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 Ir Abajo Respuesta Imprimir
Autor Tema: Acciones sobre archivos de texto. [Batch]  (Leído 46,510 veces)
KamuiDNA

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #60 en: 23 Abril 2010, 00:20 »

problema resuelto. thx


« Última modificación: 11 Junio 2010, 19:31 por KamuiDNA » En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #61 en: 23 Abril 2010, 00:26 »

Coloca tu código con la etiqueta GeShi, sino borraré el mensaje.


En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #62 en: 25 Abril 2010, 01:30 »

Necesitamos el contenido de ISLA_Diaria.txt.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
KamuiDNA

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #63 en: 26 Abril 2010, 16:49 »

problema resuelto. thx
« Última modificación: 11 Junio 2010, 19:31 por KamuiDNA » En línea
KamuiDNA

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #64 en: 17 Mayo 2010, 22:56 »

Alguna idea de por que no funciona ?
En línea
astral_153

Desconectado Desconectado

Mensajes: 13


HOMO NOSCE TE IPSUM


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #65 en: 27 Mayo 2010, 03:45 »

Hola soy nuevo en esto xD….    Necesito su ayuda para organizar el contenido de un documento de texto….  De mayor a menor……….

Ej:

File.txt

Código:
5
8
9
3
5
8
4
5
2
6

Y quiero que me salga

File.txt

Código:
9
8
8
6
5
5
5
4
3
2
Gracias de antemano xD xD xD

El foro es muy bueno e interesante.. me ha ayudado mucho………  ;-) xD
En línea

"Toda teoría es gris y sólo es verde el árbol de dorados frutos que es la vida"
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #66 en: 27 Mayo 2010, 04:08 »

¿Has usado el comando sort?

Código
type file.txt | sort 
type file.txt | sort -r
sort < file.txt
 
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
astral_153

Desconectado Desconectado

Mensajes: 13


HOMO NOSCE TE IPSUM


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #67 en: 27 Mayo 2010, 19:50 »

Código:
¿Has usado el comando sort?

Código
type file.txt | sort
type file.txt | sort -r
sort < file.txt


gracias por el comado, no lo conocia aun... que do perfecto...... lo utilice de la siguiente manera.
Citar
@ echo off

type file.txt | sort /r

pause

solamente hay un pequeño problema.....
si pongo cantidades mas alta las organiza por el primer numero....


Ej:

Citar
88
77
66
8855
214
1
1111
1
sale asi
Citar
8855
88
77
66
214
1111
1
1
y deberia salir de esta manera...
Citar
1111
214
88
77
66
1
1
asi estaria organizado del mas alto al mas pequeño por cantidad
Graciass.. Nuevamente.   ;D
En línea

"Toda teoría es gris y sólo es verde el árbol de dorados frutos que es la vida"
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #68 en: 28 Mayo 2010, 01:04 »

Bueno, una vez más está comprobado que las herramientas que da Windows son una reverenda porquería:

Código
C:\>type file.txt
88
77
66
8855
214
1
1111
1
 
 
C:\>type file.txt | sort
 
1
1
1111
214
66
77
88
8855
 
C:\>

Hice este código que lo resuelve:
Código
@echo off
setlocal enabledelayedexpansion
set contador=0
for /f "eol= tokens=* delims=" %%x in (names.txt) do (
set /a contador+=1
set "linea[!contador!]=%% style="color: #448888;">x"
)
:: Algoritmo bubble sort:
for /l %%i in (1, 1, %contador%) do (
for /l %%j in (1, 1, %contador%) do (
if !linea[%% style="color: #448888;">j]! lss !linea[%% style="color: #448888;">i]! (
set "temporal=!linea[%% style="color: #448888;">i]!"
set "linea[%%i]=!linea[%% style="color: #448888;">j]!"
set "linea[%%j]=!temporal!"
)
)
)
for /l %%_ in (1, 1, !contador!) do (
echo Linea : !linea[% style="color: #448888;">%_]!
)

Con un simple algoritmo bubble sort bastó:
Código:

C:\>type file.txt
88
77
66
8855
214
1
1111
1


C:\>code.bat
Linea : 8855
Linea : 1111
Linea : 214
Linea : 88
Linea : 77
Linea : 66
Linea : 1
Linea : 1

C:\>

¿Para qué querías ordenar ese archivo?

Por cierto el código también sirve para ordenar cadenas de caracteres:

Código:
C:\>type file.txt
Carlos
Lupe
Leo
Adriana
Yareli

C:\>code.bat
Linea : Yareli
Linea : Lupe
Linea : Leo
Linea : Carlos
Linea : Adriana

C:\>


Saludos.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #69 en: 28 Mayo 2010, 01:11 »

Alguna idea de por que no funciona ?

Cuando no ayudo es porque no me especifican bien que es lo que quieres, o porque no me dejas una salida de como debiera quedar el archivo de texto, así que te sugiero pongas el mensaje de nuevo explicando paso a paso qué es lo que quieres.

Saludos.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
astral_153

Desconectado Desconectado

Mensajes: 13


HOMO NOSCE TE IPSUM


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #70 en: 29 Mayo 2010, 00:29 »

:o Hooo …… gracias por la aplicación…… funciona perfectamente ;-).... Ha lo necesito para organizar artículos vendidos de mayor a menor.. Para  saber cual se vendió mas.. En un mes...y así cada mes.. pude hacerlo en excel pero me interesa aprender sobre batch....

gracias nuevamente..  ;-)
« Última modificación: 31 Mayo 2010, 21:12 por astral_153 » En línea

"Toda teoría es gris y sólo es verde el árbol de dorados frutos que es la vida"
labandera

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #71 en: 11 Junio 2010, 10:29 »

Hola,

A ver si alguien me puede ayudar... Necesito hacer un script que me lea un .txt que contenga numeros de la siguiente forma:

123
4322
3434
3343
3434
.
.
.

Lo que tengo que conseguir es que el script lea solamente los dos últimos números (los de abajo) y me los compare y me devuelva si son iguales o no. Supongo que es sencillo pero soy nulo para esto.

Muchas gracias de antemano
En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.940


/^$/


Ver Perfil WWW
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #72 en: 11 Junio 2010, 20:25 »

Código:
C:\>type file.txt
32013
233
25640
22503
9834
30482
25655
1122
7745
3570

C:\>

Código
@echo off
type "file.txt" | findstr /v /n "%RANDOM%jasdkjlakjsdas%RANDOM%"
for /f "tokens=*" %%# in ('type "file.txt" ^| find /v /c ""') do (set "nLines=%%#";)
:: Sacar la última línea:
for /f "tokens=1-2 delims=:" %%a in ('
type "file.txt" ^| findstr /v /n "%RANDOM%!" ^| findstr /r /i "^%nLines%:.*"
') do (
set "compare_1=%%b";
)
echo.&echo Ultima linea :
echo %nLines%: %compare_1%
:: Sacar la penúltima línea:
set /a "nLines-=1"
for /f "tokens=1-2 delims=:" %%a in ('
type "file.txt" ^| findstr /v /n "%RANDOM%!" ^| findstr /r /i "^%nLines%:.*"
') do (
set "compare_2=%%b";
)
echo Penultima linea :
echo %nLines%: %compare_2%
echo.&echo Comparando...
if %compare_1% equ %compare_2% (
echo "Son iguales"
) else (
echo "No son iguales"
)

Código:
C:\>code.bat
1:32013
2:233
3:25640
4:22503
5:9834
6:30482
7:25655
8:1122
9:7745
10:3570

Ultima linea :
10: 3570
Penultima linea :
9: 7745

Comparando...
"No son iguales"

C:\>
Código:
C:\>code
1:1
2:2
3:3
4:4
5:5
6:6
7:6

Ultima linea :
7: 6
Penultima linea :
6: 6

Comparando...
compare_1=6
compare_2=6
"Son iguales"

C:\>
Código
@echo off
setlocal enabledelayedexpansion
set "contador=0"
:: Mostrar el archivo :
type "file.txt" | findstr /v /n "%RANDOM:~ajshdjkasd!"
for /f "tokens=*" %%_ in ('type "file.txt" ^| find /v /c ""') do (set "nLines=%%_";)
for /f "tokens=* delims=" %%_ in (file.txt) do (
set /a "contador+=1"
set "linea[!contador!]=% style="color: #448888;">%_"
)
set "compare_1=!linea[% style="color: #448888;">nLines%]!";
set /a "nLines-=1"
set "compare_2=!linea[% style="color: #448888;">nLines%]!";
if %compare_1% equ %compare_2% (
echo "Son iguales"
) else (
echo "No son iguales"
)
 
Dime para qué querías hacer eso.

« Última modificación: 11 Junio 2010, 20:54 por Leo Gutiérrez. » En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
labandera

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #73 en: 11 Junio 2010, 22:56 »

Buenas, gracias por la respuesta, el lunes lo pruebo con calma y ya te cuento...

Lo necesito para monitorizar un error de un stderr.log (remedy). La idea es contar este error y pasarlo a un txt (que me sirve de contador). Cada x tiempo, pueden ser 5 min o 10 min, este contador lo paso a un txt en el que voy añadiendo el número de errores que salen.

Ahí entras tú, si los dos últimos números son iguales es que no se han incrementado los errores, si son distintos es que si, entonces tendría que reiniciar un servicio de otra máquina.

Espero haber sido claro. Muchas gracias, de verdad. Tengo ganas de probarlo, me estaba volviendo majara y no era capaz de sacarlo.

En línea
astral_153

Desconectado Desconectado

Mensajes: 13


HOMO NOSCE TE IPSUM


Ver Perfil
Re: Acciones sobre archivos de texto. [Batch]
« Respuesta #74 en: 20 Junio 2010, 23:50 »

!Hola!  :D tengo una pequeña duda y necesito su ayuda....  :huh:   estoy intentando hacer una aplicacion bat que me cierre la cesion tras... (-t xx) XX tiempo.

este codigo funciona perfectamente..

Código:
shutdown -r -f -t 30

se reinicia en 30 segundos
pero


Código:
shutdown -l -f -t 30

deberia cerrar sesion en 30 segundos.
y la cierra al instante...


necesito su yuda o algo similar que pueda utilizar
preferiblemente que aparezca en una ventana que no pueda que no permita cancelar facilmente.. xD xD xD ...

gracias de antemano.... !Buen Post!  ;-)   ^^,
« Última modificación: 20 Junio 2010, 23:52 por astral_153 » En línea

"Toda teoría es gris y sólo es verde el árbol de dorados frutos que es la vida"
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines