dummabua Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 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
shutdown-Frnow Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 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
dummabua Geschrieben 2. Juni 2004 Autor Geschrieben 2. Juni 2004 du bist ein GOTT... vielen DANK :uli
Schlaubi Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 Hallo, wie wärs mit dem Kommando: filesize <file> ?? :floet:
dummabua Geschrieben 2. Juni 2004 Autor Geschrieben 2. Juni 2004 filesize: command not found naja etz hab ichs ja... trotzdem danke
nic_power Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 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
alligator Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 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 ): du -k <file> | awk '{print $1}' cya alligator
nic_power Geschrieben 2. Juni 2004 Geschrieben 2. Juni 2004 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
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden