![]() |
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| UNIX for Dummies Preguntas y Respuestas Si no está seguro de que para publicar un UNIX o Linux cuestión, puesto que aquí. Todos los novatos en Linux, UNIX y bienvenida! |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| Grep sed sólo a los números en la cadena | ajilesh | Programación de scripts de shell y | 5 | 11-07-2008 01:39 PM |
| Cómo ordenar una cadena con los números | ahjiefreak | Programación de scripts de shell y | 5 | 12-21-2007 10:52 AM |
| Cómo comparar los de punto flotante / números reales | padarthy | Programación de scripts de shell y | 13 | 09-24-2007 08:03 PM |
| ¿Cómo puedo obtener números de una cadena? | eliraza6 | Programación de scripts de shell y | 13 | 07-18-2007 07:04 AM |
| problema con números de punto flotante en awk | kanagias | Programación de scripts de shell y | 7 | 06-24-2005 03:14 PM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Uso de los números flotantes en Cadena
Estimados Gurús Unix,
Tengo una lista de archivos que quiero bucle más .... por ejemplo: Código:
sl40_z11.70.txt sl41_z11.40.txt sl42_z11.10.txt sl43_z10.80.txt Código:
#!/bin/sh # echo -n "....enter first Z-coordinate position....."; read zpos q="scale=3; $zpos" p=0.3 # loopNumber=$[($lastslice - $firstslice)+1] echo "loopNumber is $loopNumber" echo firstslice no. is $firstslice for ((i=$firstslice; i<=$loopNumber; i++)); do n=$[i] for ((k=0; k<=$loopNumber; k++)); do r=$[k] ; f=$r*$p ; zposition=$q-$f echo "sl$[n]_z$[zposition].txt" done done Mi problema es que el script funciona bien con la salvedad de que bash no reconoce $ zposition. Que aparentemente no puede manejar iteración flotante con números? Alguien puede ayudar? ¡Salud! |
|
||||
|
Prueba esto y cambiar de acuerdo a las variables ur.
echo "scale \u003d 4; $ b + $ c" | aC |
|
||||
|
Cita:
Código:
echo "$zposition" |bc Código:
echo "sl$[n]_z$[zposition].txt" |
|
||||
|
Prueba esta
echo "$ sl _z (n)) $ (zposition. txt" |
|
||||
|
no funciona. ¿puedo preguntar .. has hecho probar sus sugerencias bufore a sugerir el foro?
|
|
||||
|
Cita:
Yo también revisarse rayado y mi cabeza también! Hay un error en la secuencia de comandos ... si firstslice es más grande que lastslice que no funcionará. Así que he intentado un camino diferente usando awk. como recordatorio, esto es lo que quiero hacer, tengo una lista de archivos: Código:
sl40_z11.70.txt sl41_z11.40.txt sl42_z11.10.txt sl43_z10.80.txt Código:
cp sl40_z11.70.txt sl40_z11.70.dat cp sl41_z11.40.txt sl41_z11.40.dat cp sl42_z11.10.txt sl42_z11.10.dat cp sl43_z10.80.txt sl43_z10.80.dat mi nuevo guión es la siguiente: Código:
#!/bin/sh
#
echo -n "....enter first slice number....."; read firstslice
echo -n "....enter last slice number....."; read lastslice
#
echo -n "....enter first Z-coordinate position....."; read zpos
#sliceDiff=0.3
#
loopNumber=$[($lastslice - $firstslice)+1]
echo "loopNumber is $loopNumber"
echo firstslice no. is $firstslice
for ((k=$firstslice;k<=$lastslice; k++)); do
r=$[k]
echo "$firstslice $r $zpos" | awk '{print $3-(($2-$1)*0.3)}'
#echo "$firstslice $r $zpos" | awk '{print $i}' sl$2_z[$3-(($2-$1)*0.3)].txt > xxxx.dat
done
bucles en los 4 archivos muy bien. Pero no sé cómo incorporar el resultado en la última línea del script para que awk reconoce el nombre del archivo. Cualquier ayuda sería muy apreciada. ¡Salud! |
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|