The UNIX and Linux Forums  


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
Leggi csv in Hash array? kinmak Shell scripting e di programmazione 1 05-07-2008 11:35 AM
Come leggere dal file txt e l'uso che, come un array Pinky UNIX for Dummies Domande & Risposte 4 10-08-2007 01:18 AM
creare array di caratteri di partecipazione sring then echo array. rorey_breaker Shell scripting e di programmazione 5 09-28-2007 09:42 AM
ls mentre leggere loop - interno leggere raccogliendo sbagliato ingresso dkieran Shell scripting e di programmazione 2 05-14-2007 04:02 PM
Come faccio a leggere array elementi dinamicamente in bash? haisubbu UNIX for Dummies Domande & Risposte 1 08-29-2006 03:19 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 07-23-2008
aoussenko aoussenko is offline
Utente Registrato
  
 

Iscriviti Data: maggio 2008
Interventi: 119
come leggere un valore var in array

Salve
Ho bisogno di leggere un valore della variabile in modo che ciascun array di caratteri / cifre diventerà un elemento di array, ad esempio:
A \u003d 147921231432545436547568678679870
Il risultato dovrebbe essere in possesso di ciascun array cifre come un elemento.
Grazie per qualsiasi aiuto-A
  #2 (permalink)  
Old 07-23-2008
thana thana is offline
Utente Registrato
  
 

Iscriviti Data: gennaio 2008
Interventi: 55
Ci dovrebbe essere una qualche forma di SEPERATOR tra i valori
  #3 (permalink)  
Old 07-23-2008
Sivaswami's Avatar
Sivaswami Sivaswami is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2007
Località: India
Interventi: 62
È possibile utilizzare il comando taglio all'interno di un ciclo.

cut-c <position>
  #4 (permalink)  
Old 07-23-2008
zaxxon's Avatar
Zaxxon zaxxon is offline Forum Staff  
Moderatore
  
 

Iscriviti Data: Sep 2007
Posizione: Germania
Messaggi: 2.289
Sì, che sarebbe la 1a fase.

Scrivere per esempio come

Codice:
A="842 5 2 64  24 11"

Si può quindi scorrere con per esempio

Codice:
for ELE in ${A}; do
   echo "I want ${ELE] cookies!"
done

  #5 (permalink)  
Old 07-24-2008
danmero danmero is online now Forum Advisor  
  
 

Iscriviti Data: novembre 2007
Ubicazione: 45,48-73,63
Messaggi: 1.435
Citazione:
Originalmente inviato da aoussenko View Post
Salve
Ho bisogno di leggere un valore della variabile in modo che ciascun array di caratteri / cifre diventerà un elemento di array, ad esempio:
A \u003d 147921231432545436547568678679870
Il risultato dovrebbe essere in possesso di ciascun array cifre come un elemento.
Grazie per qualsiasi aiuto-A
La prossima volta si prega di utilizzare il codice tag.
Ecco la soluzione bash:

Codice:
$ A=147921231432545436547568678679870
$ set -- $(for i in $(seq 0 $((${#A} - 1)));do printf "%s " ${A:$i:1};done)
$ echo $*
1 4 7 9 2 1 2 3 1 4 3 2 5 4 5 4 3 6 5 4 7 5 6 8 6 7 8 6 7 9 8 7 0

... o awk soluzione:

Codice:
set -- $(awk -v v="$A" 'BEGIN{split(v,a,"");for (i=1;i<= length(v);i++) printf "%s ",a[i]}')


Ultimo a cura di danmero; al 07/24/2008 01:16 PM.. Motivo: aggiungere awk soluzione
  #6 (permalink)  
Old 07-24-2008
BMDan BMDan is offline
Utente Registrato
  
 

Iscriviti Data: luglio 2008
Ubicazione: BlackMesh Managed Hosting
Interventi: 66
Mi piace un po 'meglio di danmero l'esempio, come in realtà si mette in un array:


Codice:
for i in $(seq 0 $((${#string}-1))); do array[$i]=${string:$i:1}; done

Che produce:


Codice:
$ A=147921231432545436547568678679870; for i in $(seq 0 $((${#A}-1))); do array[$i]=${A:$i:1}; done

$ set | grep array
array=([0]="1" [1]="4" [2]="7" [3]="9" [4]="2" [5]="1" [6]="2" [7]="3" [8]="1" [9]="4" [10]="3" [11]="2" [12]="5" [13]="4" [14]="5" [15]="4" [16]="3" [17]="6" [18]="5" [19]="4" [20]="7" [21]="5" [22]="6" [23]="8" [24]="6" [25]="7" [26]="8" [27]="6" [28]="7" [29]="9" [30]="8" [31]="7" [32]="0" [33]="")

Si noti che questo non andrà a buon fine, soprattutto per grandi archi, basta uscire per un po 'di tempo e l'uso (o uno stile per C-()), invece.

Se questo è quello che stai cercando, è anche possibile creare lo stesso effetto di danmero's script con sed:

Codice:
$ echo 147921231432545436547568678679870 | sed 's/\(.\)/\1 /g'
1 4 7 9 2 1 2 3 1 4 3 2 5 4 5 4 3 6 5 4 7 5 6 8 6 7 8 6 7 9 8 7 0


Ultimo a cura di BMDan; al 07/24/2008 03:09 PM.. Motivo: Aggiungi sed soluzione
  #7 (permalink)  
Old 07-24-2008
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
addict
  
 

Iscriviti Data: gennaio 2007
Ubicazione: Варна, България / Milano, Italia
Messaggi: 2.915
Con Z-Shell:


Codice:
zsh-4.3.4% A=147921231432545436547568678679870
zsh-4.3.4% print $A[4]
9
zsh-4.3.4% print $A[-3]
8

Con bash/ksh93, qui corda e volte:


Codice:
$ a=($(fold -w1<<<$A))
$ printf "%s\n" "${a[0]}"
1
$ printf "%s\n" "${a[3]}"
9

Per i serbatoi di età:


Codice:
$ A=147921231432545436547568678679870
$ set -- `printf "%s\n" "$A"|fold -w1`
$ printf "%s\n" "$1"
1
$ printf "%s\n" "$4"
9

Closed Thread

Segnalibri

Tag
shell array, variabile manipolazione

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 è 05:24 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