Zum Inhalt springen

EILIG: NUR Dateigrösse anzeigen lassen


dummabua

Empfohlene Beiträge

Hi,

ich brauche den shell Befehl, der mir NUR die Grösse einer Datei ausgibt und nix weiter.

Beispiel:

es existiert file1 und es hat 100 byte

_______________________________

[root@localhost] <befehl> file1

100

_______________________________

sowas wäre echt prkatisch, hab leider grad ned viel Zeit zum googlen, darum auch EILIG im Head

Link zu diesem Kommentar
Auf anderen Seiten teilen

nen einzelnen befehl weiss ich jetzt nicht, aber so sollte es gehen:

ls -al file | awk '{print $5}'

das $5 müsste gegebenenfalls noch angepasst werden, die ls -al ausgabe ist glaub ich nicht bei jedem os gleich. mit $5 meint das nur das 5. feld der ausgabe von ls -al ausgegeben werden sollte, feldtrennung ist ein leerzeichen. also wenn die grösse bei dir im 6. feld steht, statt $5 $6 verwenden.

hoff das war nicht zu verwirrent ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

filesize ist auch nichts anderes als ein Skript, welches mit "ls" und "awk" arbeitet :); "du -sk" gibt die Dategröße in Blöcke aus (nicht in Bytes). Wesentlich performanter als die Variante mit "ls" und "awk" ist jedoch die Verwendung von stat:

stat -c %s "dateiname"

Nic

Nic

Link zu diesem Kommentar
Auf anderen Seiten teilen

Servus,

erstmal die Frage welche shell und welches OS.

Denn bei mir auf Sol 8 mit ksh:

# filesize

ksh: filesize: not found

# stat

ksh: stat: not found

@nic_power

zu du:

# man du

...

-k Write the files sizes in units of 1024 bytes, rather

than the default 512-byte units.

Ich würde das so machen (shutdown-Frnow und Nachtgeist gemixt :D ):

du -k <file> | awk '{print $1}'

cya

alligator

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

@nic_power

zu du:

# man du

...

-k Write the files sizes in units of 1024 bytes, rather

than the default 512-byte units.

Richtig. Das heisst in der Praxis, dass die Blockgröße auf 1024 Bytes gesetzt wird (eine Unit=1024 Bytes, die Ausgabe erfolgt in Units). Die genaue Dateigröße kannst Du damit aber nicht ermitteln. Die 100 Byte grosse Datei aus dem Beispiel von dummabua wird mit einer Unit (=1024 Bytes) Größe angegeben (was dem 10fachen der tatsächlichen Dateigröße entspricht).

stat gibt es beispielsweise unter Linux/BSD oder auch als Bestandteil der gnu fileutilities für praktisch jedes Betriebsystem; kann aber sicherlich nicht auf jedem System als Voraussetzung angesehen werden. Portabel und genau ist wohl nur die Lösung über "ls" und "awk".

Nic

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...