The UNIX and Linux Forums  

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
agregar valores con un bucle hcclnoodles Programación de scripts de shell y 1 05-27-2008 07:42 AM
sustituir la columna de valores. charandevu Programación de scripts de shell y 6 04-02-2008 03:21 AM
cómo leer la columna de impresión y los valores en virtud de que la columna gemini106 Programación de scripts de shell y 6 03-28-2008 07:05 AM
Cómo verificar los valores nulos en un archivo de la columna por columna si las columnas no son valores NULL Mandab Programación de scripts de shell y 7 03-15-2008 09:57 AM
sustituir los valores de una columna con el primer valor en la columna sumeet UNIX para usuarios avanzados y expertos 3 02-06-2007 01:13 PM

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 02-08-2007
berlin_germany berlin_germany is offline
Usuario Registrado
  
 

Fecha: noviembre 2006
Puestos: 17
Ayuda en la adición de los valores positivos y negativos en una columna

Hola Gurús,

En mi archivo tengo una cantidad de campo desde la posición 74 a 87, que contiene los valores a partir de '+' y '-'. Quiero añadir todos los valores positivos en una varible llamada "crédito" y todos los valores negativos en la variable "débito". Lo sé, podemos utilizar grep para identificar los valores con los signos positivos y negativos. Pero, no sé, cómo añadirlos separado en 2 variables en un script. ¿Hay alguna manera de hacerlo que en la línea de comandos? Cualquier ayuda sería mucho appriciated. Gracias!

En mi archivo Campo Cantidad ha justificado a la derecha como los valores,

+1345778500000
-327800000
+642307000000
-4300000
+2308007
Estos valores mirar aquí justificado a la izquierda de la pantalla, pero están realmente justificados por la derecha en mi archivo.
  #2 (Enlace permanente)  
Old 02-08-2007
Jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Fecha: febrero 2004
Ubicación: NM
Mensajes: 5.805

Código:
awk ' {
           value=substr($0,74,14)
           while (substr(value,1,1) == " " ) {value=substr(value,2)}
           if(value>0) { plus+=value}
           else    {minus+=value}
        }
       END { print plus, minus} ' filename | read credit debit

intentar algo así ....

.. desordenados justificación el derecho ...
  #3 (Enlace permanente)  
Old 02-09-2007
berlin_germany berlin_germany is offline
Usuario Registrado
  
 

Fecha: noviembre 2006
Puestos: 17
Jim McNamara, gracias por la respuesta. Que funciona bien, cuando los valores se justificado a la izquierda. Pero, he justificado a la derecha los valores en el archivo. Por lo tanto, '+' o '-' puede empezar en cualquier posición de 74 a 87 bytes.

¿Cómo podemos usar 'longitud' función para el tratamiento de los valores como justificado a la izquierda, por lo que los principales espacios pueden ser ignorados?
  #4 (Enlace permanente)  
Old 02-09-2007
berlin_germany berlin_germany is offline
Usuario Registrado
  
 

Fecha: noviembre 2006
Puestos: 17
Creo que, después de resolver el problema, donde no se preocupan por la posición de '+' y '-' signos en los valores. Puedo comprobar los valores> 0 y el resto, y de acuerdo con esa suma en 2 diferentes variables como a continuación:

awk '(
valor \u003d substr ($ 0,74,14)
if (valor> 0) (y) + \u003d valor
else (valor + \u003d menos)
)
FIN (imprimir más, menos) 'nombre de archivo | leer crédito débito
  #5 (Enlace permanente)  
Old 02-09-2007
berlin_germany berlin_germany is offline
Usuario Registrado
  
 

Fecha: noviembre 2006
Puestos: 17
Tras funciona bien,

#! / bin / ksh

credit_sum \u003d `awk '(valor \u003d substr ($ 0, 74, 14), si (valor> 0) (+ \u003d valor de crédito)) END (print crédito)' nombre de archivo»

debit_sum \u003d `awk '(valor \u003d substr ($ 0, 74, 14), si (valor <0) (débito + \u003d valor)) END (print débito)' nombre de archivo»

exit 0;
Closed Thread

Marcadores

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 06:52 AM.


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