Что лучший способ состоит в том, чтобы перечислить размер / в Терминале?

Передайте пароль отдельному дескриптору файла от входа (дважды, однажды для шифрования и однажды для дешифрования). Не экспортировать PASS к среде.

read -sp 'Enter password. ' PASS
printf '%s\n' "$PASS" |
openssl enc -d -aes-256-cbc -kfile /dev/stdin -in file.old |
sed ... | {
  printf '%s\n' "$PASS" |
  openssl enc -e -aes-256-cbc -kfile /dev/stdin -in /dev/fd/3 -out file;
} 3<&0

Если Ваша система не имеет /dev/fd, можно использовать -pass аргумент для сообщения openssl считать пароль из открытого дескриптора файла.

printf '%s\n' "$PASS" | {
  printf '%s\n' "$PASS" |
  openssl enc -d -aes-256-cbc -pass fd:0 -in file.old |
  tr a-z A-Z | tee /dev/tty | {
  openssl enc -e -aes-256-cbc -pass fd:3 -out file; }
} 3<&0

5
24.12.2012, 01:03
3 ответа

Вы спрашиваете об общем размере файлов/каталогов, содержавших в /, или общий размер корневой файловой системы?

Если первый, использовать df -h /.

Если последний, можно сделать это с du -sh /, который будет очень медленным, поскольку это должно перечислить каждый файл. Лучше, но возможно неточный из-за вещей любят, связывают, монтируется, файловые системы, сохраненные как редкие файлы в других файловых системах/и т.д.: общее количество Ваш df вывод.

6
27.01.2020, 20:33
  • 1
    Также обратите внимание на это точными результатами, du потребности, которые будут выполняться как корень. Иначе будут каталоги, в которые это не может убывать, и Вы не получите полный счет. –  a CVn 22.12.2012, 17:39
  • 2
    я имел в виду первого.Спасибо. Я не услышал о df прежде. –  Korgan Rivera 22.12.2012, 20:22
  • 3
    @KorganRivera Вы также хотели бы использовать -x переключатель для проверки другой файловой системы, смонтированной в каталоге, пропускается. –  peterph 23.12.2012, 01:00
  • 4
    @peterph - Вы ошибаетесь, второй пример подразумевает, что это желаемо. –  Chris Down 23.12.2012, 14:10
  • 5
    @ChrisDown - не уверенный, что второй пример. Это почти никогда не должно быть желаемо - после того как у Вас есть сетевое монтирование, работая du на нем уничтожитель (например, с обычным домом, или совместно используемые данные монтируется, который может быть на порядке сотен ГБ). –  peterph 23.12.2012, 21:45

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

df -h /

Без аргументов, df предоставляет информацию об использовании для всех файловых систем (кроме некоторого специального предложения, non-disk-backed файловые системы, для которых это не важно).

Если Вы хотите знать, сколько пространства используется каталогом и его подкаталогами, которые не составляют полную файловую систему, используют du (использование диска).

5
27.01.2020, 20:33
  • df метаданные файловой системы отчетов - т.е. что файловая система способна к хранению в данный момент. Важная вещь отметить состоит в том, что в некоторых файловых системах это должно не обязательно отразить свободное пространство (это - свободное место, хотя), так как фс может сделать предварительные выделения, когда это думает, что это - хорошая идея (например, XFS может сделать это, когда Вы начнете создавать большой файл - это выделит дополнительное место, чтобы гарантировать, что файл менее рассеивается и не проводит слишком много времени с выделениями, когда это должно будет записать фактические данные в диск). Такое пространство отмечено как доступное с некоторой задержкой. Информация также отражает факт, что некоторое пространство на диске (или мог бы быть), необходимый структурам файловой системы - это может вызвать любопытный эффект на некоторые файловые системы: создание отчетов о больше чем 100% располагает использование с интервалами.

  • du даст Вам реальное использование диска с гранулярностью блоков файловой системы (в большинстве систем, не уверенных в тех, которые могут использовать один блок для данных нескольких файлов). Так как это имеет к stat() каждый файл, принадлежащий главной иерархии каталогов (та du дан на командной строке), это медленно, специально для случаев с маленькими файлами.

  • stat даст Вам информацию о единственном файле (или каталог в этом отношении).

Следовательно, если Вы хотите знать:

  • сколько свободного пространства Вы имеете в файловой системе (приблизительно), использовать df;

  • сколько данных Вы действительно имеете в файлах (не обязательно в единственной файловой системе), использовать du - знайте, что это может легко стать медленным особенно в некоторых сетевых файловых системах;

  • сколько места запись для самого корневого каталога занимает, использовать stat / .

2
27.01.2020, 20:33

Теги

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