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.
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
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.
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.