Подтвердить что ты не робот

Как узнать свободное пространство на диске для данного пути в оболочке linux?

1) Я в какой-то директории 2) Я хочу узнать, сколько свободного места осталось там

Есть ли простая команда, которая делает это? Я не хочу смотреть в fstab или что-то еще, чтобы сопоставить устройства и установить точки в моем уме, чтобы определить, сколько свободного места у меня осталось.

4b9b3361

Ответ 1

Попробуйте df -h

Еще лучше: df -h . или df -h path-to-file

Ответ 2

Другую команду 'df' обсуждают только половину уравнения. Зная, что файловая система имеет свободное пространство, не означает, что пользователь имеет доступ к пространству.

Вы также можете использовать команду:

df -k .

Чтобы узнать свободное пространство в текущей файловой системе. "df" достаточно умен, чтобы ходить по дереву и сообщать об этом. Если вы хотите проверить квоты (см. Ниже), вы можете обработать вывод df, чтобы найти файловую систему, чтобы проверить квоту.

Не может быть свободных inodes (df -i $PWD), могут быть зарезервированные блоки для суперпользователя (по умолчанию на ext2/3/4, 5% от общего числа зарезервировано для root). Я считаю, что df показывает свободное пространство, включая зарезервированные блоки, поэтому число, которое вы видите, на самом деле выше, чем доступно, если вы не root.

Пользователь может иметь ограничения на квоту. Ограничения квоты гораздо менее распространены в наши дни, так как стоимость хранения настолько низкая, но стоит также проверить с помощью команды квоты.

Ответ 3

Я бы использовал следующее, чтобы быть более совместимым со всеми различными df(1) и их выводами:

df . | awk '$3 ~ /[0-9]+/ { print $4 }'

Не нужно использовать tail(1) для соответствия регулярному выражению.

Ответ 4

df -Ph $PWD | tail -1 | awk '{ print $3}'