Bem, olhando para as fontes das ferramentas coreutils, true
é uma das menores. É menor que kill
, embora maior que false
, que é o menor:
$ for i in src/*c; do wc -l $i; done | sort -nr | tail -11
78 src/true.c
74 src/operand2sig.c
73 src/sync.c
37 src/prog-fprintf.c
2 src/uname-uname.c
2 src/uname-arch.c
2 src/ls-vdir.c
2 src/ls-ls.c
2 src/ls-dir.c
2 src/lbracket.c
2 src/false.c
Então, true
tem 78 linhas, mas apenas 58 delas são realmente código (o resto são linhas em branco e comentários):
$ grep . src/true.c | awk '{ if(/\/\*/){a=0} if(a){print} if(/\*\//){a=1}}' | wc
50
E sim, muito disso (10 linhas) é dedicado à função usage
. O programa ainda é minúsculo .
Além disso, o motivo pelo qual false
é menor é que ele simplesmente chama true
:
$ cat src/false.c
#define EXIT_STATUS EXIT_FAILURE
#include "true.c"