Befehle · 4 min read · Sep 17, 2025
Linux size-Befehl Tutorial für Anfänger (6 Beispiele)
Wie einige von Ihnen vielleicht bereits wissen, besteht eine Objekt- oder ausführbare Datei in Linux aus mehreren Abschnitten (wie txt und data). Falls Sie die Größe jedes Abschnitts wissen möchten, gibt es ein Befehlszeilenprogramm - genannt size - das Ihnen diese Informationen bereitstellt. In diesem Tutorial werden wir die Grundlagen dieses Werkzeugs anhand einiger leicht verständlicher Beispiele besprechen.
Aber bevor wir das tun, ist es erwähnenswert, dass alle in diesem Artikel genannten Beispiele auf Ubuntu 16.04LTS getestet wurden.
Linux size-Befehl
Der size-Befehl listet im Grunde die Abschnittsgrößen sowie die Gesamtgröße für die Eingabeobjektdatei(en) auf. Hier ist die Syntax für den Befehl:
size [-A|-B|--format=compatibility]
[--help]
[-d|-o|-x|--radix=number]
[--common]
[-t|--totals]
[--target=bfdname] [-V|--version]
[objfile...]Und so beschreibt die Man-Seite dieses Dienstprogramms:
Das GNU size-Dienstprogramm listet die Abschnittsgrößen---und die Gesamtgröße---für jede der Objekt- oder
Archivdateien objfile in seiner Argumentliste auf. Standardmäßig wird eine Zeile Ausgabe für jede
Objektdatei oder jedes Modul in einem Archiv erzeugt.
objfile... sind die zu untersuchenden Objektdateien. Wenn keine angegeben sind, wird die Datei "a.out"
verwendet.Im Folgenden finden Sie einige Beispiele im Frage-Antwort-Stil, die Ihnen eine bessere Vorstellung davon geben, wie der size-Befehl funktioniert.
Q1. Wie verwendet man den size-Befehl?
Die grundlegende Verwendung von size ist sehr einfach. Alles, was Sie tun müssen, ist, den Namen der Objekt-/ausführbaren Datei als Eingabe an das Tool zu übergeben. Folgendes ist ein Beispiel:
size aplFolgendes ist die Ausgabe, die der obige Befehl auf unserem System erzeugt hat:
Die ersten drei Einträge sind für die Text-, Daten- und bss-Abschnitte, mit ihren entsprechenden Größen. Dann kommt die Gesamtgröße in dezimaler und hexadezimaler Form. Und schließlich ist der letzte Eintrag der Dateiname.
Q2. Wie wechselt man zwischen verschiedenen Ausgabeformaten?
Das Standardausgabeformat, so die Man-Seite für size, ähnelt dem Format von Berkeley. Wenn Sie möchten, können Sie jedoch auch die System V-Konvention verwenden. Dazu müssen Sie die –format-Option mit SysV als Wert verwenden.
size apl --format=SysVHier ist die Ausgabe in diesem Fall:

Q3. Wie wechselt man zwischen verschiedenen Größen-Einheiten?
Standardmäßig wird die Größe der Abschnitte in dezimal angezeigt. Wenn Sie möchten, können Sie diese Informationen jedoch auch in oktal und hexadezimal erhalten. Dazu verwenden Sie die Befehlszeilenoptionen -o und -x.
Hier ist, was die Man-Seite über diese Optionen sagt:
-d
-o
-x
--radix=number
Mit einer dieser Optionen können Sie steuern, ob die Größe jedes Abschnitts in dezimal
(-d oder --radix=10); oktal (-o oder --radix=8); oder hexadezimal (-x oder --radix=16) angegeben wird. In
--radix=number werden nur die drei Werte (8, 10, 16) unterstützt. Die Gesamtgröße wird immer in
zwei Radizes angegeben; dezimal und hexadezimal für -d oder -x-Ausgabe oder oktal und hexadezimal, wenn Sie
-o verwenden.Q4. Wie lässt man den size-Befehl die Gesamtsummen aller Objektdateien anzeigen?
Wenn Sie size verwenden, um die Abschnittsgrößen für mehrere Dateien auf einmal zu ermitteln, können Sie auch das Tool dazu bringen, die Gesamtsummen aller Spaltenwerte anzuzeigen. Sie können diese Funktion aktivieren, indem Sie die Befehlszeilenoption -t verwenden.
size -t [file1] [file2] ...Der folgende Screenshot zeigt diese Befehlszeilenoption in Aktion:
Die letzte Zeile in der Ausgabe wurde durch die Befehlszeilenoption -t hinzugefügt.
Q5. Wie lässt man size die Gesamtgröße gemeinsamer Symbole in jeder Datei drucken?
Wenn Sie den size-Befehl mit mehreren Eingabedateien ausführen und möchten, dass der Befehl die gemeinsamen Symbole in jeder Datei anzeigt, können Sie dies mit der Befehlszeilenoption –common tun.
size --common [file1] [file2] ...Es ist auch erwähnenswert, dass diese beim Verwenden des Berkeley-Formats in der bss-Größe enthalten sind.
Q6. Was sind die anderen verfügbaren Befehlszeilenoptionen?
Neben den bisher besprochenen bietet size auch einige allgemeine Befehlszeilenoptionen wie -v (für Versionsinformationen) und -h (für eine Zusammenfassung der berechtigten Argumente und Optionen)

Darüber hinaus können Sie auch size dazu bringen, Befehlszeilenoptionen aus einer Datei zu lesen. Dies können Sie mit der @file-Option tun. Folgendes sind einige Details zu dieser Option:
Die gelesenen Optionen werden anstelle der ursprünglichen @file-Option eingefügt. Wenn die Datei nicht existiert oder
nicht gelesen werden kann, wird die Option wörtlich behandelt und nicht entfernt. Optionen in der Datei
sind durch Leerzeichen getrennt. Ein Leerzeichen kann in einer Option enthalten sein, indem die gesamte Option in
entweder einfache oder doppelte Anführungszeichen gesetzt wird. Jedes Zeichen (einschließlich eines Rückwärtsschrägstrichs) kann
aufgenommen werden, indem das einzuschließende Zeichen mit einem Rückwärtsschrägstrich vorangestellt wird. Die Datei kann selbst
zusätzliche @file-Optionen enthalten; solche Optionen werden rekursiv verarbeitet.Fazit
Eines ist klar, der size-Befehl ist nicht für jeden. Er richtet sich nur an diejenigen, die mit der Struktur von Objekt-/ausführbaren Dateien in Linux umgehen. Wenn Sie also zu der Zielgruppe gehören, üben Sie die Optionen, die wir hier besprochen haben, und Sie sollten bereit sein, das Tool täglich zu verwenden. Für weitere Informationen zu size besuchen Sie die Man-Seite.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.