Collegamenti diretti alla fonte di alcuni programmi popolari in coreutils
:
cat
(767 linee)chmod
(570 righe)cp
(2912 linee)cut
(831 linee)date
(570 righe)df
(1718 linee)du
(1112 righe)echo
(272 righe)head
(1070 righe)hostname
(116 righe)kill
(312 righe)ln
(651 linee)ls
(4954 linee)md5sum
(878 linee)mkdir
(306 linee)mv
(512 righe)nice
(220 righe)pwd
(394 linee)rm
(356 linee)rmdir
(252 righe)shred
(1325 linee)tail
(2301 linee)tee
(220 righe)touch
(437 righe)wc
(801 linee)whoami
(91 righe)
Elenco completo qui.
In realtà fonti più sensate sono fornite da http://suckless.org guarda il loro sbase
archivio:
git clone git://git.suckless.org/sbase
Sono più chiari, più intelligenti, più semplici e più schifosi, ad esempio ls.c
ha solo 369 LOC
Dopodiché sarà più facile capire il codice GNU più complicato.
Tutti questi comandi di base fanno parte del coreutils
pacchetto.
Puoi trovare tutte le informazioni di cui hai bisogno qui:
http://www.gnu.org/software/coreutils/
Se vuoi scaricare l'ultima fonte, dovresti usare git:
git clone git://git.sv.gnu.org/coreutils
Per installare git sulla tua macchina Ubuntu, dovresti usare apt-get (git non è incluso nell'installazione standard di Ubuntu):
sudo apt-get install git
A dire il vero, qui puoi trovare la fonte specifica per il ls
comando:
http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/ls.c
Solo 4984 righe di codice per un comando 'abbastanza facile' come ls
... ti interessa ancora leggerlo?? Buona fortuna! :D
ls
fa parte di coreutils. Puoi ottenerlo con git :
git clone git://git.sv.gnu.org/coreutils
Troverai coreutils elencati con altri pacchetti (scorri verso il basso) in questa pagina.