Используйте это, чтобы преобразовать число в int:
int int = Convert.ToInt32(number);
Попробуйте df -h
Еще лучше: df -h .
или df -h path-to-file
'df' управляют, чтобы другие обсудили, только половина уравнения. Знание файловой системы имеет свободное пространство, не подразумевает, что у пользователя есть доступ к пространству.
можно также использовать команду:
df -k .
Для обнаружения свободного пространства в текущей файловой системе. 'df' достаточно умен, чтобы обойти дерево для Вас и сообщить об этом. Если Вы хотите проверить квоты (см. ниже), затем можно обработать вывод df, чтобы найти, что файловая система проверяет квоту.
не может быть никакого свободного inodes (df-i $PWD), могли быть зарезервированные блоки для суперпользователя (по умолчанию на ext2/3/4, 5% общего количества резервируются для корня). Я полагаю, что df показывает свободное пространство включая зарезервированные блоки, таким образом, число, которое Вы видите, на самом деле выше, чем доступно, если Вы не корень.
у пользователя могут быть ограничения квоты. Ограничения квоты намного менее распространены в эти дни, так как стоимость устройства хранения данных является настолько низкой, но стоит свериться с командой квоты также.
Я использовал бы следующее, чтобы быть более совместимым со всем различным df(1)
и их вывод:
df . | awk '$3 ~ /[0-9]+/ { print $4 }'
Никакая потребность использовать tail(1)
, потому что eof соответствие regex.