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 > UNIX for Dummies Preguntas y Respuestas
.
google unix.com



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
Contar cadena de una variable Dip Programación de scripts de shell y 5 10-22-2008 08:19 AM
opción de grep para contar palabra exacta? maddy Linux 3 06-17-2008 08:55 AM
Necesidad de shell / script sed para grep + cadena de reemplazo pranavagarwal Programación de scripts de shell y 3 11-15-2007 06:35 AM
Contar la longitud máxima de cadena ganesh123 Programación de scripts de shell y 2 02-23-2007 04:27 PM
Contando los patrones en una cadena de shell kevin80 UNIX for Dummies Preguntas y Respuestas 3 06-03-2003 09:34 AM

Reply
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 06-24-2009
scarletsupra scarletsupra is offline
Usuario Registrado
  
 

Fecha: junio 2009
Publicaciones: 1
grep-c script contar dos veces la cadena en lugar de una vez?

He intentado esta secuencia de comandos para obtener una cuenta de la aparición de una cadena de caracteres en archivos.
Tengo varios archivos en un directorio voy a utilizar esto.
Todos los nombres de los archivos comienzan "invALL.06" La escritura de obras, salvo que cuenta dos veces por cada uno de los casos de "Total de la factura '.
Si hay 5 casos de "Factura Total" en un archivo, devuelve 10.
Lo he probado con grep-cn y grep-cx. No ha mejorado.
He intentado la cadena "Última Página" mismos resultados.
He probado por la búsqueda de la palabra "continua" en los archivos. Cuenta correctamente. ¿Tiene que ver con grep-c en más de una cadena de una palabra?
Gracias.

Script
i en invALL.06 *
hacer

count \u003d `grep-c 'Factura Total" $ i `

echo $ i "ha" $ contar "Totales Factura"

hecho


Resultados:
invALL.0605 ha Factura 870 Totales
invALL.0606 ha Factura 936 Totales


El archivo que está buscando se parece a continuación. Sólo tiene "total factura" en la factura final de cada sección.

y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y a0h60V

Factura
000000 06/19/09 84888-00
25070 ZZ Joe 1
06/19/09 14:40
Vender a mi nombre co LLC (MD)
123 de su calle DR 777 mi CONDUCIR
SUITE z
su ciudad, VA 24551 Irvington, MD 21061

vende a mí
DR 123 de su calle 555-555-1212 neto 30 días 07/19/09
yourtown, VA 24551 vendido a usted, John L 06/19/09


Para
este cliente.
para celebrar la entrega 6/17/09
1 ED51 1 0 1 SHT 2,68 2,68
15 #
2 LA4 5 0 5 cada 8,00 90,00
040
3 EW4 5 0 5 sht 7,35 36,75
4MM
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
Subtotal de no imponible: 89,43

Cantidad total de 3 líneas Enviado total 11 Total 89,43
Combustible Surchrg 3,50
Factura total 92,93








Última Página
y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y K2G y f504y4X (8U (s0p12.00h0s1b4102T y l6D y k10H y a0 h60V

Factura
000000 06/19/09 848700-01
25070 ZZ Ron 1
06/19/09 14:40
selltome isell, LLC (MD)
123 sellme 123 wesell CONDUCIR
SUITE z
pinetree, VA 24000 pinetree, AZ 12121

sellto mí
123 myroad 222-555-1212 Neto 30 días 07/19/09
árbol, VA 24000 soldfromme, jjones 06/19/09


para
este cliente.
5 Yma 2 0 2 cada 3,65 7,30
A24
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
Subtotal de no imponible: 7.30

Cantidad Total de Líneas 1 Enviado Total 2 Total 7,30
Factura total 7,30











Última Página
  #2 (Enlace permanente)  
Old 06-24-2009
Jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Fecha: febrero 2004
Ubicación: NM
Mensajes: 5.748
Código:
for i in invALL.06* 
do 
   grep -c '^Invoice Total' $i  | read count
   echo "$i  has  $count Invoice Totals" 
done
Pruebe esto.
  #3 (Enlace permanente)  
Old 06-24-2009
metilo methyl is offline
Usuario Registrado
  
 

Fecha: marzo 2008
Puestos: 1.168
Esto se parece a un formato de archivo de impresión con códigos de control de la impresora.
Es posible que la necesidad de convertir los caracteres de control al texto antes de ejecutar una búsqueda de texto. Además, normalmente el proceso de composición abierta una lista de los archivos de "mientras" bucle que también se detiene el script romper si los nombres de archivos contienen caracteres de espacio.
Intentar

Código:
ls -1d invALL.06* | while read FILENAME
do
       # sed -n l (character ell) converts control characters to text 
       count=`sed -n l "${FILENAME}" | grep -c 'Invoice Total'` 
       echo "${FILENAME} has ${count} Invoice Totals" 
done
Tomo nota de que Jim McNamara ha limitado la búsqueda a partir de líneas "Total de la factura" que puede que ya haya solucionado el problema! Se me puede ahondar demasiado profundo.

Última edición por metilo; al 06-24-2009 06:04 PM.. Motivo: Typo
Reply

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 03: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