double arrow

DU (Дисковое Использование)

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

DU сообщает об использовании дискового пространства для иерархии каталога, принимая те факторы во внимание.
По умолчанию это рекурсивно вызывает каталоги, но не пересекает стыки или каталог символьные ссылки,
и это игнорирует файл символьные ссылки. Это включает размеры контента, найденного в альтернативных данных
потоки, включая ТЕСЛА связались с объектами каталога. Файлы, на которые ссылаются через
многократные жесткие ссылки считаются только однажды. Наконец, DU сообщает и о логическом размере и фактический
размер на диске, чтобы учесть сжатые и редкие файлы и для неиспользованного кластерного пространства. Для
пример, если каталог содержит только один 10-байтовый файл, DU, сообщает о размере как о 10 байтах, и
"размер на диске" как 4096 байтов, чтобы учесть весь кластер, использованный файлом.

Синтаксис командной строки DU.

По умолчанию DU рекурсивно вызывает всю целевую структуру каталогов и выводит на экран сводные результаты, включая числа файлов и обработанных каталогов, полные размеры файла, и количество фактического использованного дискового пространства. Рисунок 11-5 показывает следствия выполнения du-q "Файлы C:\Program" на моем компьютере. (-q опция опускает баннер DU.)

Рис. 11-5. Результаты du-q "Файлы C:\Program"

-n,-l, и-v опции являются взаимоисключающими. С-n опцией DU не рекурсивно вызывает в подкаталоги и рассматривает только файлы и каталоги, которые находятся в целевом ­каталоге непосредственно. С-v опцией DU показывает размер в Кбайте промежуточных каталогов, поскольку они обрабатываются. Рисунок 11-6 показывает частичные результаты, когда я выполняю ту же самую команду DU как показано ранее, кроме с-v опцией.

Рис. 11-6. Выполнение du с-v опцией.

-l опция точно так же как-v опция и сканирует всю иерархию каталога, но это сообщает о промежуточных результатах только для числа уровней каталога, которые Вы определяете. Рисунок 11-7 показывает частичные результаты того же самого примера DU, но использующий-l 1 вместо-v.

 

Рис. 11-7/du пример, показывая промежуточное звено заканчивается для одного уровня каталога.

Утилиты Работы Файла постперезагрузки /

Программы установки часто находят, что они не могут заменить, переместитесь, или удалите файлы, потому что те файлы используются. Windows поэтому обеспечивает путь к приложениям, чтобы зарегистрировать эти операции, которые будут выполняться процессом сеансового администратора (Smss.exe), первым ­процессом usermode, чтобы запуститься во время процесса загрузки, рано в следующей системной начальной загрузке перед любыми приложениями, или службы запускаются, который мог бы препятствовать тому, чтобы файл был изменен. Определенно, приложения, работающие с административными правами, могут вызвать API MoveFileEx с флагом MOVEFILE_DELAY_UNTIL_REBOOT, который добавляет перемещение, или удалите запросы к PendingFileRenameOperations и PendingFileRenameOperations2 REG_MULTI_SZ значения в ключе менеджера HKLM\System\CurrentControlSet\Control\Session.

PendMoves.

PendMoves читает PendingFileRenameOperations, и PendingFileRenameOperations2 оценивает и перечисляет любой файл на ожидании, переименовывают или операции удаления, которые будут иметь место на следующей перезагрузке. PendMoves также проверяет присутствие исходного файла и выводит на экран ошибку, если это не доступно. Наконец, PendMoves выводит на экран дату и время, когда контент в ключе сеансового администратора был последний измененный. Это может дать представление о том, когда переименовывают или удаляют операции, были зарегистрированы.

Этот демонстрационный вывод PendMoves показывает удаление файла на ожидании и два перемещения файла на ожидании, источник, для одного из которого не присутствует.

 












MoveFile

MoveFile позволяет Вам планировать перемещение файла, переименовывать, или удалять операции для следующей ­перезагрузки. Просто определите имя существующего каталога или файла, сопровождаемого целевым именем. Используйте две двойных кавычки в качестве целевого имени, чтобы удалить файл на перезагрузке. Можно использовать MoveFile, чтобы удалить каталог, только если это пусто. Операции пересылки могут быть выполнены только на единственном объеме, и они требуют, чтобы целевой каталог уже существовал. Отметьте, что переименовывание - просто перемещение, где каталог не изменяется.

MoveFile требует административных прав. См. статью Microsoft Knowledge Base 948601 (http://supportmicrosoftcom/kb/948601) для информации об ограниченных случаях, где задержанные операции файла не могли бы успешно выполниться.

Следующий пример перемещается sample.txt от c:\original до c:\newdir после перезагрузки, предполагая, что c:\newdir существует тогда:

movefile c:\original\sample.txt c:\newdir\sample.txt.

 Этот пример и перемещает и переименовывает sample.txt: movefile c:\original\sample.txt c:\newdir\renamed.txt.

И этот пример с двумя строками удаляет c:\original\sample.txt и затем c:\original каталог, предполагая, что это пусто в той точке.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: