ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Contador De Lineas De código C En Bash


Enviado por   •  25 de Diciembre de 2011  •  380 Palabras (2 Páginas)  •  483 Visitas

Página 1 de 2

#!/bin/sh

#cat $1 | sed -n 's/^[ ]*//;s:/*.**/::;s://.*$::;//*/!bf;:l;/*//!{;N;bl;};s:/*.**/::;:f;/^$/!p' | wc -l

#Tab Width: 8

cat $1 | sed -n ' #el -n significa que solo imprima lo que yo le digo explícitamente con p

s/^[ t]*// #busca todos los espacios o tabs que hayan al inicio y los borra

s:/*.**/:: #si encuentra cualquier caracter entre /* y */ en la misma linea lo borra

# esto lo hago especialmente para evitar los posibles casos /* // */ si borro //.*$ antes de

s://.*$:: #borra todos los comentarios con //, hasta el fin de linea

s/^.$// #borra las lineas que tengan un solo caracter

//*/!bf #si no encuentra un /* se salta a f (de final)

:l

/*//!{ #mientras no encuentre el */ que cierra el comentario

N #agrega la linea al hold space

bl #se devuelve a l (de loop)

}

s:/*.**/:: #si encuentra cualquier caracter entre /* y */ lo borra

#(notese el uso de : como delimitador, puede ser cualquier caracter, así no hay que escapear tanto)

:f

/^$/!p #si la linea no es nula, la imprime

' > $1.temp.txt #se tira el resultado a un archivo de texto

cat $1.temp.txt #se escribe el resultado

cat $1.temp.txt | wc -l #se cuentan las lineas

...

Descargar como (para miembros actualizados)  txt (1.3 Kb)  
Leer 1 página más »
Disponible sólo en Clubensayos.com