The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Convalidare XSL foglio dati del file di dati in Unix ravijunghare UNIX for Dummies Domande & Risposte 1 11-07-2008 09:32 AM
Hai bisogno di aiuto per l'aggiunta di tre nuove colonne nel file esistente da fatching dati da file Sandeep_Malik Shell scripting e di programmazione 36 09-17-2008 05:12 PM
Estrazione di dati da file di testo sulla base di configurazione nel file di configurazione suparnbector Shell scripting e di programmazione 3 08-10-2007 02:25 AM
Post Shell programmazione: Domanda su un file sorgente e di leggere i dati dal file ccwq Shell scripting e di programmazione 3 08-04-2007 10:28 PM
Uso ciclo di lettura di un file, il recupero dei dati dal data base. Sonu4lov Shell scripting e di programmazione 1 01-19-2007 03:38 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 12-03-2008
naughty21 naughty21 is offline
Utente Registrato
  
 

Iscriviti Data: giugno 2008
Interventi: 16
Come ottenere i dati da un tag in formato XML File

Salve
Ho un file XML in cui i dati vengono caricati da un tavolo e relazionale i nomi di colonna sono i tag nei file XML, che è mostrato di seguito.

<State> Nazioni Unite </ Stato> <Zip/> <CompanyName/><EmailAddress>FDF@gmail.COM</ EmailAddress>IGNOTI <PromoType> </ PromoType> </ Promozione> </ PromotionList <State> Nazioni Unite </ Stato> <Zip/> <CompanyName/><EmailAddress>zd4946@gmail.com</ EmailAddress>

ciò che ho da fare è: deve controllare i dati tra i tag che sono in grassetto è valido o no ... hanno mezzi per verificare se è un indirizzo email o no ... per verificare questo ho bisogno per visualizzare i dati tra questi tag.

e per trovare la lunghezza dei dati che si trova in mezzo tra i tag ... lunghezza di FDF@gmail.COM

per questo ho bisogno di ottenere i dati dal file xml ovunque <EmailAddress> </ EmailAddress> tag è presente.



dispiace se la sua già chiesto ... ma ho controllato i didnt get Exatly corrispondente risultato per la mia esigenza

alcun aiuto in questo ... In questo modo in Korn shell

Ultimo a cura di naughty21; al 12/04/2008 01:51 PM..
  #2 (permalink)  
Old 12-03-2008
Christoph Spohr Christoph Spohr is offline
Utente Registrato
  
 

Iscriviti Data: Sep 2008
Interventi: 205
Salve,

Vorrei tentare di estrarre le email direttamente. Per me questo funziona con il tuo campione:

Codice:
email=($(grep -o "[0-9A-Za-z]\+@[0-9A-Za-z]\+\.[A-Za-z]\{2,3\}" file))
Questo scrive tutti i modelli, e solo questi modelli, corrispondenti al regexp
l'array in e-mail.

Codice:
echo ${#email[0]}
Vi darà la lunghezza del primo elemento. Senza il "#" si darà
l'entrata in posizione 0.

HTH Chris
  #3 (permalink)  
Old 12-03-2008
naughty21 naughty21 is offline
Utente Registrato
  
 

Iscriviti Data: giugno 2008
Interventi: 16
chris grazie per la risposta


ma
quando nel tentativo di seguito con uno

Codice:
email=($(grep -o "[0-9A-Za-z]\+@[0-9A-Za-z]\+\.[A-Za-z]\{2,3\}" 456))

im getting this error 

ksh: 0403-057 Syntax error: `(' is not expected.


quando nel tentativo di seguito con uno
Codice:
email=$(grep -o "[0-9A-Za-z]\+@[0-9A-Za-z]\+\.[A-Za-z]\{2,3\}" 456)

im getting error like this 

grep: Not a recognized flag: o
Usage: grep [-E|-F] [-c|-l|-q] [-insvxbhwy] [-p[parasep]] -e pattern_list...
        [-f pattern_file...] [file...]
Usage: grep [-E|-F] [-c|-l|-q] [-insvxbhwy] [-p[parasep]] [-e pattern_list...]
        -f pattern_file... [file...]
Usage: grep [-E|-F] [-c|-l|-q] [-insvxbhwy] [-p[parasep]] pattern_list [file...]
qualsiasi altra sggestions
  #4 (permalink)  
Old 12-03-2008
Christoph Spohr Christoph Spohr is offline
Utente Registrato
  
 

Iscriviti Data: Sep 2008
Interventi: 205
Nessuna sorpresa, si utilizza ksh. Questa soluzione funziona solo in bash o zsh.
Con ksh non posso aiutarti. Ma questo dovrebbe essere facile. Just google per array
in ksh. $(...) Eseguire il seguente comando in una subshell. (...) Mette
le cose all'interno di in un array. Forse si può sostituire con (...)
`...` (Backtick). Ma non lo so.

Probabilmente si dovranno adeguare le regexp, troppo. Ormai non
corrispondenza e-mail con i punti, di sottolineatura, trattini ecc
  #5 (permalink)  
Old 12-03-2008
naughty21 naughty21 is offline
Utente Registrato
  
 

Iscriviti Data: giugno 2008
Interventi: 16
Citazione:
Originalmente inviato da Christoph Spohr View Post
Nessuna sorpresa, si utilizza ksh. Questa soluzione funziona solo in bash o zsh.
Con ksh non posso aiutarti. Ma questo dovrebbe essere facile. Just google per array
in ksh. $(...) Eseguire il seguente comando in una subshell. (...) Mette
le cose all'interno di in un array. Forse si può sostituire con (...)
`...` (Backtick). Ma non lo so.

Probabilmente si dovranno adeguare le regexp, troppo. Ormai non
corrispondenza e-mail con i punti, di sottolineatura, trattini ecc
Ho avuto la risposta, ma funziona con 1. Occorrenza del tag solo

Codice:
awk -F '</?EmailAddress>' '{print $2}' 456.xml
ma ho bisogno per più volte .... indirizzo e-mail mediante tag esiste per più volte nel file ...
quindi necessità di controllare tutto il file XML per ottenere l'indirizzo e-mail ovunque <EmailAddress> </ EmailAddress> tag è presente.

Ultimo a cura di naughty21; al 12/03/2008 05:07 PM..
  #6 (permalink)  
Old 12-04-2008
samshaw samshaw is offline
Utente Registrato
  
 

Iscriviti Data: dicembre 2008
Interventi: 16
Re: scrivere valori di tag XML in array

Ciao Tutti,

Hope all is fine. Sto usando Bourne Shell (sh). Ho questa semplice struttura XML (è molto ben definito e questo è il modo in questa struttura sarà fisso). Il luogo esatto del campione è la seguente (Ci sarà sempre un valore per ogni tag):

<Users>
<host>
<hostAddress> 180.144.226.47 </ hostAddress>
<UserName> pwdfe </ username>
<password> hjitre </ password>
<instanceCount> 2 </ instanceCount>
</ Host>
<host>
<hostAddress> 180.144.226.87 </ hostAddress>
<UserName> trrrer </ username>
<password> jhjjhhj </ password>
<instanceCount> 3 </ instanceCount>
</ Host>
<host>
<hostAddress> 180.455.226.87 </ hostAddress>
<UserName> wewqw </ username>
<password> dfsdfd </ password>
<instanceCount> 3 </ instanceCount>
</ Host>
</ Utenti>
-------------------------------------------------- --------------------

Ora vorrei creare un array con i valori dei tag XML. Per esempio H_ARRAY (180 .144.226.47 ', 180 .144.226.87', 180 .144.226.87 '). Poi ho pensato di attraversare i valori della matrice di conseguenza. Sono novizio di shell scripting e soprattutto "SED"Comando che, dopo ripetuti tentativi non è stato in grado di capire. Apprezzerebbe il vostro aiuto. Vorrei sapere se ho perso qualcosa,


H_ARRAY \u003d ( `echo $ () hostAddress»)
U_ARRAY \u003d ( `echo $ (username)»)
P_ARRAY \u003d ( `echo $ (password)»)
I_ARRAY \u003d ( `echo $ () instanceCount»)

Grazie,
Sam
  #7 (permalink)  
Old 12-04-2008
dennis.jacob dennis.jacob is offline Forum Advisor  
dj -------
  
 

Iscriviti Data: febbraio 2007
Ubicazione: Singapore / Bangalore / Cochin
Interventi: 573
Prova questo rapido approccio:
Codice:
sed 's/>/\n>/g' filename | sed 's/>\([A-Za-z0-9]*@[A-Za-z0-9]*\.[A-Za-z0-9]*\)<.*/\1/' | sed '/@/!d'
Closed Thread

Segnalibri

Tag
dati, ricerca, script di shell, shell scripting, tag, unix script, basi di scripting unix, xml

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 07:52 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0