Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: injekt2017 en 24 Noviembre 2017, 21:37 pm



Título: Leer Archivo en vbScript
Publicado por: injekt2017 en 24 Noviembre 2017, 21:37 pm
Hola buenas,

Es mi primera publicación. Voy muy perdido en programación con BASH y soy un estudiante. La verdad es que estoy poco decepcionado con la profesora, porque no nos explica nada. y por tu cuenta, te bloqueas y no eres capaz de hacer los ejercicios. y la cagas en el dia de examen.

Ya llevo un examen suspendido, y el otro esta por caer.


El motivo de este post, es no soy capaz de hacer el siguiente ejercicio. Si alguien me podria hechar una mano, le agradeceria.

Pasado un archivo rutas.txt :

c:\fitxer.jpg
c:\fitxer2.jpg
c:\fitxer.doc
c:\alumnes\pere\fotos\andorra.jpg
c:\alumnes\pere\fotos\andorra.gif
c:\alumnes\pere\fotos\resum.pdf
c:\alumnes\pere\fotos\resum-pdf.doc
c:\alumnes\anna\script2.vbs
c:\alumnes\anna\exercici.doc


Por via de argumentos con vbscript. Tengo que controlar la extension y si en argumentos por ejemplo le pongo que la extension es jpg, si lo encuentra.... que me guarde esa linea de archivo en un archivo : haEncontrado.txt

y si no encuentra me ponga todas las rutas en el noHaencotrado.txt.


Un saludo.

 


Título: Re: Leer Archivo en vbScript
Publicado por: Eleкtro en 25 Noviembre 2017, 17:14 pm
En el foro no se hacen tareas, muestra lo que hayas intentado hacer por ti solo.

De todas formas aquí tienes toda la información necesaria (con ejemplos de código incluido) para llevar a cabo el ejercicio:

‣ Análisis (parsing) de argumentos:
  • WScript.Arguments Property (https://msdn.microsoft.com/en-us/library/z2b05k8s(v=vs.84).aspx)
  • Working with Command-Line Arguments (https://technet.microsoft.com/en-us/library/ee156618.aspx)

‣ Evaluación de extensión de archivo:
  • FileSystemObject Object (https://msdn.microsoft.com/en-us/library/z9ty6h50(v=vs.84).aspx)
  • GetExtensionName Function (https://msdn.microsoft.com/en-us/library/x0fxha2a(v=vs.84).aspx)
  • StrComp Function (https://msdn.microsoft.com/en-us/library/ya4w6fwy(v=vs.84).aspx)

‣ Lectura de contenido linea a linea en archivo de texto plano:
  • OpenTextFile Method (https://msdn.microsoft.com/en-us/library/314cz14s%28v=vs.84%29.aspx)
  • AtEndOfLine Property (https://msdn.microsoft.com/en-us/library/kaf6yaft(v=vs.84).aspx)
  • ReadLine Function (https://msdn.microsoft.com/en-us/library/h7se9d4f(v=vs.84).aspx)

‣ Escritura de datos en archivo local:
  • TextStream Object (https://msdn.microsoft.com/en-us/library/312a5kbt(v=vs.84).aspx)
  • Write Method (https://msdn.microsoft.com/en-us/library/6ee7s9w2%28v=vs.84%29.aspx)
  • WriteLine Method (https://msdn.microsoft.com/en-us/library/t5399c99(v=vs.84).aspx)

Saludos


Título: Re: Leer Archivo en vbScript
Publicado por: injekt2017 en 26 Noviembre 2017, 12:55 pm
Yo entiendo que no podeis hacer ejercicios obviamente.

Mi codigo hecho hasta el momento es este :

Option Explicit

Dim argsUnnamed,valor,i, salida,entrada,punto,extension
Set salida = wscript.stdout
Set entrada = wscript.stdin
Set argsUnnamed = Wscript.Arguments.Unnamed

Do While Not entrada.AtEndOfStream
valor = entrada.ReadLine

punto = Instr(valor,".")
'salida.writeline " punto encontrado en posicion : " & punto

extension = Mid(valor,punto+1,3)
'salida.writeline " extension encontrado en : " & extension
salida.writeline "" & extension

'if argsUnnamed = extension then
'wscript.writeline " Coinciden "
'end if
'salida.WriteLine(valor.GetExtensionName("rutas.txt"))
Loop

wscript.quit


Que coge la extension del archivo :
c:\fitxer.jpg
c:\fitxer2.jpg
c:\fitxer.doc
c:\alumnes\pere\fotos\andorra.jpg
c:\alumnes\pere\fotos\andorra.gif
c:\alumnes\pere\fotos\resum.pdf
c:\alumnes\pere\fotos\resum-pdf.doc
c:\alumnes\anna\script2.vbs
c:\alumnes\anna\exercici.doc


pero, ahora no se como puedo hacer que pasados argumentos sin nombre y el archivo que pase los buscados en : HaEncontrado.txt

y los que no encuentra en : NoEncontrados.txt


Saludos.


Título: Re: Leer Archivo en vbScript
Publicado por: John1Connor en 30 Noviembre 2017, 09:23 am
WScript.Arguments para archivos .vbs y si usas un hta: elhta.CommandLine.
creo que wscript.arguments te da solo los argumentos, no se si separados, en un array o que pero tengo recuerdos de esto: ".arguments(1)" asique calculo que ya te los separa en un array.
Y en hta te da el nombre de la ventana con todos los argumentos ahi vas a tener que usar esplit o regexp para separar los arguments.

Saludos



Ah perdon ya lo sabias, no entiendo tu duda, pareciera que ya tenes todo.