The UNIX and Linux Forums  
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.

Go Back   El UNIX y Linux Foros > Arriba Foros > Programación de scripts de shell y
.
google unix.com



Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí.

Más UNIX y Linux Foro Temas usted puede encontrar útiles
Hilo Hilo para principiantes Foro Respuestas Último mensaje
Leer csv hash en conjunto? kinmak Programación de scripts de shell y 1 05-07-2008 10:35 AM
Cómo leer desde el archivo txt y que el uso como una matriz rosado UNIX for Dummies Preguntas y Respuestas 4 10-08-2007 12:18 AM
crear arreglo que contiene los caracteres de sring then echo matriz. rorey_breaker Programación de scripts de shell y 5 09-28-2007 08:42 AM
LS bucle while read - lee interior recogiendo mal de entrada dkieran Programación de scripts de shell y 2 05-14-2007 03:02 PM
¿Cómo puedo leer gama elementos dinámicamente en bash? haisubbu UNIX for Dummies Preguntas y Respuestas 1 08-29-2006 02: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 vínculo Herramientas de hilo Buscar en este Hilo Tasa de Hilo Modos de visualización
  #1 (Enlace permanente)  
Old 07-23-2008
aoussenko aoussenko is offline
Usuario Registrado
  
 

Fecha: Mayo 2008
Puestos: 119
cómo leer un valor en la matriz de var

Hola
Tengo que leer un valor de la variable en conjunto de manera que cada carácter / dígito se convertirá en un elemento de variedad, por ejemplo:
A \u003d 147921231432545436547568678679870
La matriz resultante debería celebrar cada dígito como un elemento.
Muchas gracias por cualquier ayuda-A
  #2 (Enlace permanente)  
Old 07-23-2008
thana thana is offline
Usuario Registrado
  
 

Fecha: enero 2008
Puestos: 55
Debe haber algún tipo de separador entre los valores
  #3 (Enlace permanente)  
Old 07-23-2008
Sivaswami's Avatar
Sivaswami Sivaswami is offline
Usuario Registrado
  
 

Fecha: marzo 2007
Ubicación: India
Puestos: 62
Puede utilizar el comando que hay un corte de circuito.

cut-c <position>
  #4 (Enlace permanente)  
Old 07-23-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Moderador
  
 

Fecha: Sep 2007
Lugar: Alemania
Puestos: 2.272
Sí, que sería el 1er paso.

Escribir, por ejemplo, que como
Código:
A="842 5 2 64  24 11"
A continuación, puede desplazarse por ella con, por ejemplo,
Código:
for ELE in ${A}; do
   echo "I want ${ELE] cookies!"
done
  #5 (Enlace permanente)  
Old 07-24-2008
danmero danmero is offline Forum Advisor  
  
 

Fecha: noviembre 2007
Ubicación: 45.48-73.63
Mensajes: 1.421
Cita:
Publicado originalmente por aoussenko View Post
Hola
Tengo que leer un valor de la variable en conjunto de manera que cada carácter / dígito se convertirá en un elemento de variedad, por ejemplo:
A \u003d 147921231432545436547568678679870
La matriz resultante debería celebrar cada dígito como un elemento.
Muchas gracias por cualquier ayuda-A
La próxima vez que hagan uso de etiquetas de código.
Aquí está la solución de bash:
Código:
$ 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
... awk o solución:
Código:
set -- $(awk -v v="$A" 'BEGIN{split(v,a,"");for (i=1;i<= length(v);i++) printf "%s ",a[i]}')

Última edición por danmero; al 07-24-2008 12:16 PM.. Motivo: añadir awk solución
  #6 (Enlace permanente)  
Old 07-24-2008
BMDan BMDan is offline
Usuario Registrado
  
 

Fecha: julio 2008
Localización: Alojamiento Gestionado BlackMesh
Puestos: 66
Me gusta esta un poco mejor que el ejemplo de danmero, ya que en realidad lo pone en una matriz:

Código:
for i in $(seq 0 $((${#string}-1))); do array[$i]=${string:$i:1}; done
Que produce:

Código:
$ 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]="")
Tenga en cuenta que esto no para-sobre todo las grandes cadenas, sólo salir de la para y el uso de un tiempo (o un estilo de C ()) en lugar.

Si eso es lo que estás buscando, también puede crear el mismo efecto que la secuencia de comandos con danmero sed:
Código:
$ 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

Última edición por BMDan; al 07-24-2008 02:09 PM.. Motivo: Añadir sed solución
  #7 (Enlace permanente)  
Old 07-24-2008
radoulov's Avatar
radoulov radoulov is online now Forum Staff  
adicto
  
 

Fecha: enero 2007
Ubicación: Варна, България / Milán, Italia
Puestos: 2.856
Con Z-Shell:

Código:
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, aquí y doble cadena:

Código:
$ a=($(fold -w1<<<$A))
$ printf "%s\n" "${a[0]}"
1
$ printf "%s\n" "${a[3]}"
9
Para los mayores depósitos:

Código:
$ A=147921231432545436547568678679870
$ set -- `printf "%s\n" "$A"|fold -w1`
$ printf "%s\n" "$1"
1
$ printf "%s\n" "$4"
9
Closed Thread

Marcadores

Etiquetas
depósito matriz, variable de manipulación

Herramientas de hilo Buscar en este Hilo
Buscar en este Hilo:

Búsqueda avanzada
Modos de visualización Vota a este hilo
Vota a este hilo:

Normas de envío
puede que no nuevo puesto de hilos
puede que no enviar respuestas
puede que no enviar archivos adjuntos
puede que no editar sus puestos

Código BB es Encendido
Emoticones son Encendido
[IMG] código Encendido
Código HTML es Apagado
Trackbacks son Encendido
Pingbacks son Encendido
Refbacks son Encendido




Todas las horas son GMT -4. La hora es 05:49 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traducciones de idiomas Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Estudios
El UNIX y Linux Foros Contenido Copyright © 1993-2009. Todos los derechos Reserved.Ad Gestión por RedTyger

Las direcciones URL de contenido vBSEO 3.2.0