quellcode von standardtools einsehen

lordg2009

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.559
Hi

Ich habe mcih schon seit längerem mit C-Programmierung beschäftigt und wollte jetzt, da ich ein häufiger Nutzer von Linux bin, gerne einmal den Code einiger Standardtools einsehen, wie 'echo', oder 'cut', etc.
Google spuckt dazu folgenden Befehl aus um den Quellcode von Paketen herunterzuladen:
Code:
$ apt-get source Paketname

Leider gibt es aber keine Pakete wie 'echo', oder 'cut'. Wie komme ich da jetzt ran?

Vielen Dank für eure Hilfe
 
Die beiden von dir genannten Tools finden sich bei Ubuntu (und damit wohl auch in debian) im Paket coreutils:
Code:
dpkg -S `which cut`
 
Am besten immer die Orginalquellen besorgen. Linux-Standardtools stammen größtenteils aus dem GNU-Projekt. Der FTP-Server ist ftp://ftp.gnu.org/gnu/ mit einem Unterverzeichnis für jedes Paket.

echo: Das wird normalerweise intern von der Bash erledigt gemacht und nicht /bin/echo verwendet. Code also in ftp://ftp.gnu.org/gnu/bash/

cut: gehen wir mal Schritt für Schritt auf Suche nach den Quellen:

1. Welches File wird ausgeführt, wenn ich "cut" aufrufe:
$ which cut
/usr/bin/cut

2. Aha. Zu welchem Paket gehört dieses /usr/bin/cut?
$ dpkg -S /usr/bin/cut
coreutils: /usr/bin/cut

3. Aha. Also findet man die Originalquellen in ftp://ftp.gnu.org/gnu/coreutils/

Dein "apt-get source ..." geht auch, aber damit saugst du dir die bereits debianisierten Quellen. Das ist IMHO am Anfang zum Angucken irgendwelcher Programme eher ein Nachteil. Mit "apt-cache show PAKETNAME" findest du einen Hinweis auf die Homepage des Projekts. Ist ja nicht alles von GNU.
 
Hey, das ist ja cool.
Diesen Code kann man ja auch als Normalsterblicher verstehen.

Vielen Dank für die ausführliche Beschreibung.

Wie komme ich jetzt an den Quellcode des Kernels?
 
Sry, hab bei meinem letzten Versuch keine Lösung gefunden, deshalb hab ich es beim kernel nicht versucht. Sry
 
Zurück
Oben