LINUX.ORG.RU

комментарии, пустые строки, команды препроцессора, закомментированные строки препроцессорным #if , сгенерированные на лету во время компиляции файлы - нужно считать ? :)

Eshkin_kot ★★
()
Ответ на: комментарий от nano105

> ух ты =) спасибо огромное

кхм... мне то за что спасибо ? %) я бы лично не взялся за такой подсчёт, лучше уж в системе контроля версий имхо посчитать...

Eshkin_kot ★★
()
Ответ на: комментарий от Eshkin_kot

да не, это я про команду wc =) никогда не слышал... а такой подсчет, как вы предложили, действительно не нужен... нужно тупо посчитать строки в курсовике =)

nano105
() автор топика

i=0 && for a in `find ~/path/to/sources/`; do bash count.sh <$a; i=$(($i+$?)); echo $a; echo $i; done && echo $i

Где count.sh :

#!/bin/sh

c=0
while read line
do
c=$(($c + 1));
echo $c;
done
echo "****$c";
exit $c

;)

xTERM ★★
()
Ответ на: комментарий от xTERM

Гланды тоже сложным способом удалять будете?

anonymous
()

вы знаете... лично я делаю tar c src |wc -l ;-)

alexsaa
()
Ответ на: комментарий от grob

> Не забываем про ARG_MAX

А разве что-то случится? Действительно?

$ find / -print0 2>/dev/null |xargs -0 ldd --help

Здесь ldd запускается много раз.

alexsaa
()
Ответ на: комментарий от alexsaa

"On implementations with a large value for {ARG_MAX}, xargs may produce command lines longer than {LINE_MAX}"

У GNU утилит вроде лимита нет, а в других реализациях вполне может быть.

grob ★★★★★
()
Ответ на: комментарий от grob

> "On implementations with a large value for {ARG_MAX}, xargs may produce command lines longer than {LINE_MAX}"

И что это нарушает?

LINE_MAX это предел на длину строк -- то есть на содержимое файлов -- при чем тут командная строка??

dilmah ★★★★★
()
Ответ на: комментарий от grob

> find . -name '*.cpp' -exec cat '{}' ';' | wc -l

find . -type f -name \*.cpp -exec cat '{}' + | wc -l

быстрее будет; `{} +' ARG_MAX учитывает.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.