![]() |
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| 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 |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
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.. |
|
||||
|
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))
l'array in e-mail. Codice:
echo ${#email[0]}
l'entrata in posizione 0. HTH Chris |
|
||||
|
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...]
|
|
||||
|
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 |
|
||||
|
Citazione:
Codice:
awk -F '</?EmailAddress>' '{print $2}' 456.xml
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.. |
|
||||
|
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 |
![]() |
| Segnalibri |
| Tag |
| dati, ricerca, script di shell, shell scripting, tag, unix script, basi di scripting unix, xml |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|