Как узнать свободное пространство на диске для данного пути на оболочке Linux? [закрытый]

Используйте это, чтобы преобразовать число в int:

int int = Convert.ToInt32(number);
15
задан Brickgao 26 February 2016 в 13:15
поделиться

4 ответа

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

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

40
ответ дан 30 November 2019 в 23:57
поделиться

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

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

df -k .

Для обнаружения свободного пространства в текущей файловой системе. 'df' достаточно умен, чтобы обойти дерево для Вас и сообщить об этом. Если Вы хотите проверить квоты (см. ниже), затем можно обработать вывод df, чтобы найти, что файловая система проверяет квоту.

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

у пользователя могут быть ограничения квоты. Ограничения квоты намного менее распространены в эти дни, так как стоимость устройства хранения данных является настолько низкой, но стоит свериться с командой квоты также.

15
ответ дан 30 November 2019 в 23:57
поделиться

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

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

Никакая потребность использовать tail(1), потому что eof соответствие regex.

8
ответ дан 30 November 2019 в 23:57
поделиться
df -Ph $PWD | tail -1 | awk '{ print $3}'
2
ответ дан 30 November 2019 в 23:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: