7 Stimmen

Größe der Shell-Datei unter Linux

Wie kann ich die Größe einer Datei in eine Variable übertragen?

ls -l | grep testing.txt | cut -f6 -d' '

gab die Größe an, aber wie kann ich sie in einer Shell-Variablen speichern?

0 Stimmen

Ja, es ist die Bash-Shell und ich danke Ihnen allen.

1 Stimmen

0 Stimmen

Es sieht so aus, als ob 2011 eine andere Frage gestellt wurde

20voto

Ignacio Vazquez-Abrams Punkte 735200
filesize=$(stat -c '%s' testing.txt)

4voto

ghostdog74 Punkte 305138

So können Sie es machen mit ls (lesen Sie die Manpage für die Bedeutung von -s )

var=$(ls -s1 testing.txt | awk '{print $1}')

Oder Sie können verwenden stat con -c '%s' .

Oder Sie können verwenden finden. (GNU):

var=$(find testing.txt -printf "%s")

2voto

pixelbeat Punkte 28985
size() {
  file="$1"
  if [ -b "$file" ]; then
    /sbin/blockdev --getsize64 "$file"
  else
    wc -c < "$file"  # Handles pseudo files like /proc/cpuinfo
    # stat --format %s "$file"
    # find "$file" -printf '%s\n'
    # du -b "$file" | cut -f1
  fi
}

fs=$(size testing.txt)

1voto

Burntime Punkte 2304
size=`ls -l | grep testing.txt | cut -f6 -d' '`

0voto

Ville Pesari Punkte 1

Sie können die Dateigröße in Bytes mit dem Befehl wc was auf Linux-Systemen ziemlich üblich ist, da es Teil der GNU coreutils :

wc -c < file

In einem Bash-Skript können Sie sie wie folgt in eine Variable einlesen:

FILESIZE=$(wc -c < file)

Desde man wc :

-c, --bytes
       print the byte counts

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X