Home    Forum    Search    FAQ    Register    Log in


Post new topic  Reply to topic 
Page 1 of 1
 
 
Leer Un Texto Anterior A Una Palabra
Author Message
Reply with quote   Download Post  
Post Leer Un Texto Anterior A Una Palabra 
 
Hola, soy nuevo en el foro, y realmente nuevo programando en gambas, quiero hacer un programa que requiere conocer el nombre de las interfaces de red en mi sistema Xubuntu, no sé si me estoy complicando la vida, pero mi idea era la siguiente:

usar el comando ifconfig para obtener la información de la tarjeta de red:

Shell ("ifconfig > /home/configuracion")

Y ahora tengo un archivo que se llama "configuracion" dentro de mi carpeta home

Ahora lo que quiero es abrir ese archivo y leer línea por línea sólo lo que se encuentra antes de la frase: "Link encap:"
y almacenarlo en una variable, creo que aquí necesitaré usar un arreglo (Que tampoco sé muy bien cómo se usan en gambas)

La idea es que siempre lo que está antes de esa frase será una interfaz de red, sé que si logro leer lo que está justo antes de esa frase voy a obtener una cadena con espacios, pero después se pueden eliminar.

Como he dicho anteriormente, no sé si me estoy complicando la vida, quizás hay una forma mejor para obtener estos datos en gambas o usando la consola, estoy atento a cualquier mensaje

Gracias  
 



 
rootchack - View user's profileSend private message 
Back to topPage bottom
Reply with quote   Download Post  
Post Re: Leer Un Texto Anterior A Una Palabra 
 
Bienvenido.
Lo que buscas es sencillo, sólo debes primero encontrar la posición de la cadena que buscas (función instr) luego extraer todo desde el inicio hasta esa posición (función mid o left) y luego dividirlo en líneas que almacenas a un array (función split)
Desglosando (aunque se puede hacer en muchas menos líneas) sería algo así

dim s as string
dim ar as string[] 'este es el array
dim n as integer
s=file.load("~/configuracion") 'cargas el fichero en una variable
n=instr(s,"Link encap:") 'obtienes la posicion
s=left(s,n) 'extraes todo lo que va antes de esa cadena
ar=split(s,gb.newline) 'almacenas en un array esas líneas


Con eso ya tienes el array con el contenido del fichero hasta Link encap una línea en cada elemento.

Saludos.
 




===================
No podemos regresar
 
Last edited by shordi on Wednesday, 21 June 2017, 07:49; edited 1 time in total 
shordi - View user's profileSend private message 
Back to topPage bottom
Reply with quote   Download Post  
Post Re: Leer Un Texto Anterior A Una Palabra 
 
En una sola línea sería

ar = Split(Left(file.load("~/configuracion"), InStr(file.load("~/configuracion"), "Link encap:")))


Más o menos...  aunque sería más lento por recurrir dos veces al fichero en lugar de una, claro   
 




===================
No podemos regresar
 
shordi - View user's profileSend private message 
Back to topPage bottom
Reply with quote   Download Post  
Post Re: Leer Un Texto Anterior A Una Palabra 
 
Sin utilizar el comando Shell.


Ya que te interesa conocer solo el nombre de las interfaces de red, tú podrías recobrar sus nombres desde sus file-device en la carpeta "/proc/net/dev_snmp6".

Ejemplo:
Public Sub Main()

  Dim archivos As String[]
  Dim s As String
  
    archivos = Dir("/proc/net/dev_snmp6", Null, gb.Device)
    
    For Each s In archivos
      Print s
    Next

End




Una otra posibilidad podría ser recobrando sus nombres desde el archivo "/proc/net/dev".

Ejemplo:
Public Sub Main()
  
   Dim ss As String[]
  Dim s As String
  Dim b As Byte
  
   s = File.Load("/proc/net/dev")
  
   ss = Split(s, gb.NewLine)

   For b = 2 To ss.Max
     If IsNull(ss[b]) = False Then Print LTrim(Scan(ss[b], "*:*")[0])
   Next

End

 



 
Last edited by vuott on Wednesday, 21 June 2017, 19:42; edited 3 times in total 
vuott - View user's profileSend private message 
Back to topPage bottom
Display posts from previous:    
 
HideSimilar Topics
Topic Author Forum Replies Last Post
No new posts Cómo Busco Una Palabra Exacta En Una Cade... DEATH Bases de Datos 11 Thursday, 10 January 2013, 19:40 View latest post
jsbsan
No new posts Leer Un Texto Con Las Funciones Externas D... vuott Aplicaciones/Fragmentos de Código 2 Friday, 31 January 2014, 09:06 View latest post
shordi
No new posts Extraer Una Palabra De Un Texto. shordi General 9 Monday, 18 August 2014, 08:40 View latest post
Shell
No new posts Como Colorear Una Palabra En El Texto De U... v3ctor General 4 Monday, 18 May 2015, 17:04 View latest post
vuott
 

Post new topic  Reply to topic  Page 1 of 1
 

Users browsing this topic: 0 Registered, 0 Hidden and 1 Guest
Registered Users: None


 
Permissions List
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events



  

 

cron