Утилита Norton Change Directory (NCD)

8.7.4. Утилита Norton Change Directory (NCD)

NCD является развитым средством обслуживания дерева каталогов. Эта утилита выполняет следующие функции:

1) смену рабочего каталога, причем освобождает пользователя от печатания длинной специ­фикации каталога;

2) быстрый поиск требуемого каталога по первым символам его имени;

3) создание каталога;

4) копирование поддерева файловой структуры;

5) пересылку поддерева файловой структуры;

6) вычисление размера дискового пространства, занимаемого поддеревом файловой структуры;

7) удаление, возможно, непустого каталога или целого поддерева файловой структуры;

8) переименование каталога;

9) отображение, замену и удаление метки тома;

10) отображение и печать дерева файловой структуры.

Таким образом, NCD аккумулирует возможности DOS-команд d:, CHDIR, MKDIR, RMDIR, LABEL, TREE, XCOPY и (частично) ERASE, предоставляя наряду с этим дополнительные сер­висные услуги, не реализуемые через пользовательский интерфейс DOS непосредственно.

Утилита способна работать как в недиалоговом, так и в диалоговом режимах и запускается в одном из семи форматов:

1) для смены текущего диска и/или каталога;

NCD [d:][nam] [/R] [/N]

2) для отображения или замены метки тома:

NCD [d:] /V[:label]

3) для отображения и печати дерева файловой структуры:

NCD [d:] /L[:file]  [/G | /NG] [/Т] [/P] [/А]

4) для создания или удаления каталога, либо вычисления размера дискового пространства, занятого поддеревом файловой структуры:

NCD {MD | RD | SIZE} dir

5) для копирования или пересылки поддерева файловой структуры:

NCD COPY dir 1 dir 2 [/DELETE]

6) для пересылки (перемещения) поддерева файловой структуры в пределах одного диска:

NCD GRAFT dir l dir 2

7) для удаления поддерева файловой структуры:

NCD RMTREE dir [/BATCH]

Здесь:

MD                 — команда создания каталога;

RD                  — команда удаления каталога;

SIZE               — команда подсчета размера области дисковой памяти, занимаемой поддеревом файловой структуры;

COPY             — команда копирования и пересылки поддерева файловой структуры;

GRAFT          — команда пересылки (перемещения) поддерева файловой структуры в рамках одного диска;

RMTREE       — команда удаления поддерева файловой структуры;

d                      — имя логического привода;

nam                 — начальные символы имени каталога, который нужно сделать рабочим, одно­значно его определяющие;

dir                   — спецификация каталога в соответствии с соглашениями, принятыми в DOS;

dir 1                — спецификация исходного каталога (корня поддерева файловой структуры);

dir 2                — спецификация целевого каталога.

В качестве переключателей можно задать следующие:

/R                    — пересканировать дерево файловой структуры (см. ниже);

/N                    — не обновлять дерево файловой структуры;

/V[:label]        — отобразить и записать на диск метку тома label;

/L[:file]            — отобразить на экране дисплея, отпечатать или записать в файл file дерево файловой структуры;

/A                    — вывести деревья файловых структур всех логических дисков на винчестере;

/G                    — вывести дерево файловой структуры псевдографическими символами (действует по умолчанию);

/NG                 — вывести дерево файловой структуры без использования псевдографических символов;

/T                    — вывести список спецификаций всех каталогов на диске, за каждой из которых указать число и суммарный размер файлов в соответствующем каталоге; в конце списка вывести общее число каталогов и файлов на диске, а также их суммарную длину. Этот переключатель несовместим с /G и /NG;

/P                    — обеспечить паузу при заполнении каждого экрана;

/DELETE       — удалить исходное поддерево файловой структуры после копирования, т.е. обес­печить пересылку файлов;

/BATCH         — отменить запрос о подтверждении удаления.

Все команды, аргументы и переключатели, за исключением d, /Т, /G, /NG, /А, /Р и /R задают недиалоговый режим работы утилиты.

Уникальные возможности утилиты проявляются при ее использовании для смены рабочего каталога, так как полный маршрут, да и все имя каталога задавать нет необходимости, нужно лишь обеспечить уникальность начала имени каталога. Например, вместо пары DOS-команд

D:

CD \EDITORS\TEXT\MULTEDIT

достаточно будет ввести

NCD D:MU

В этом случае утилита сменит текущий привод на D, а также найдет на диске в этом приводе каталог, начинающийся с MU, и сделает его текущим. Такие возможности существенно упрощают навигацию в разветвленной файловой структуре.

Диалоговый режим реализует все возможности NCD.

При запуске утилиты в этом режиме на дисплее появляется ее главный экран (см. рис. 8.118), большую часть которого занимает дерево файловой структуры диска, установленного в специфици­рованный командной строкой привод, или текущего диска, если привод в командной строке не задан.

 

 

Рис.  8.118.  Пример  главного  экрана утилиты  NCD

 

Внимательный читатель, видимо, заметил, что аналогичные экраны уже встречались ранее и упоминались как при описании оболочки Norton Commander (команда NCD Tree) в разделе 6, так и при рассмотрении ряда утилит в данном разделе. Действительно, многие программные продукты фирмы Symantec (Peter Norton Computing) поддерживают унифицированные средства работы с деревом файловой структуры. Отличительными же особенностями автономной утилиты NCD являются наличие полноэкранного пользовательского интерфейса, а также ряда дополни­тельных функций.

На дереве каталогов главного экрана утилиты имеется маркер, который можно перемещать по его узлам. Первоначально маркер установлен на текущем каталоге диска, дерево каталогов которого отображается на экране. Смысл использования маркера состоит в том, что им отмечается либо каталог, который требуется сделать рабочим, либо каталог, над которым в последующем будут выполняться те или иные действия.

Для перемещения маркера по дереву (для прокрутки большого дерева) можно использовать следующие клавиши:

↑, ↓, и →               — для перемещения маркера на соседний каталог кверху, внизу, слева и

справа соответственно;

PgUp и PgDn             — для прокрутки дерева каталогов на одну страницу вверх и вниз соответственно;

Ноте и End                — для прокрутки дерева каталогов к первой странице, маркируя корневой каталог, и к последней странице, маркируя последний на ней каталог, соответственно.

Однако в случае разветвленной файловой структуры использование только клавиш управления курсором не обеспечивает высокой скорости отыскания и маркировки требуемого каталога. Поэтому NCD предлагает более быстрый альтернативный способ перемещения по дереву ката­логов, называемый быстрым поиском.

Для осуществления быстрого поиска требуемого каталога с его маркировкой следует начать печатать его имя. При нажатии каждой очередной клавиши маркер будет перемещаться вниз (от текущей позиции) на ближайший каталог, имя которого начинается с напечатанных символов, а дерево каталогов при этом, возможно, будет прокручиваться вверх. Если совпадений не обнаружится, то просмотр дерева продолжится с его начала. Сами напечатанные символы будут отображаться в маленьком текстовом окне Speed Search под деревом каталогов. Когда этого не происходит, подходящий каталог в дереве отсутствует или он не зарегистрирован утилитой. В последнем случае необходимо выполнить пересканирование диска и повторить операцию поиска. Неправильно напечатанный символ можно удалить, нажав клавишу BS.

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

1) путем печатания дополнительных символов имени каталога;

2) путем нажатия комбинации клавиш Ctrl-Enter для перемещения маркера вниз на следующий подходящий каталог,

3) путем использования клавиш управления курсором.

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

Если Ваша цель состояла лишь в том, чтобы осуществить смену рабочего каталога, то после его отыскания нажмите клавишу Enter. В результате этого выполнение утилиты будет завершено, а рабочим станет тот каталог, который был помаркирован. В случае выхода из утилиты нажатием клавиши Esc рабочий каталог не изменится.

Непосредственно под деревом каталогов на главном экране NCD слева отображается полная спецификация помаркированного каталога, а справа — метка тома (Volume label) диска, с которым сейчас работает NCD.

Утилита имеет меню, включающее приведенные пункты:

Disk                            — для выполнения дисковых операций;

diRectory                   — для обслуживания каталогов;

View                           — для смены режима работы видеосистемы;

Quit!                           — для завершения работы утилиты (эквивалентно нажатию клавиши Esc).

Все пункты, за исключением последнего, являются подменю.

Подменю Disk содержит следующие команды: Change disk, Rescan disk и Volume label.

Команда Change disk (оперативный вариант — F3) обеспечивает смену обрабатываемого диска, дерево каталогов которого будет в результате этого отображено на главном экране утилиты. После выдачи команды следует в открывшемся диалоговом окне выбрать привод из предложенного списка.

Команда Rescan disk (оперативный вариант — F2) предназначена для пересканирования об­рабатываемого диска. Дело в том, что для ускорения работы утилита регистрирует сведения о файловой структуре диска в файле TREEINFO.NCD, размещаемом в его корневом каталоге. Если при обновлении дерева каталогов диска Вы пользовались только средствами NCD, то выполнять операцию пересканирования не потребуется. Однако в случае, когда Вы наряду с утилитой пользуетесь и средствами DOS (командами MKDIRV RMDIR и ERASE), то между содержимым файла TREEINFO.NCD и реальной структурой дерева каталогов возникнут несоответствия. Для их устранения требуется периодически осуществлять пересканирование диска.

Вслед за выдачей Команды открывается диалоговое окно, в котором можно подтвердить необходимость пересканирования нажатием клавиши Enter или отменить его нажатием клавиши Esc. Пересканирование является абсолютно безопасной операцией, но требует определенного времени. Именно поэтому утилита и запрашивает у пользователя подтверждение.

В результате пересканирования содержимое файла TREEINFO. NCD будет приведено в соот­ветствие реальной структуре каталогов.

Вспомним, что этот же файл Используется и оболочкой Norton Commander, но данный факт ни к каким неприятностям не приводит.

Команда Volume label (оперативный вариант Alt-V) служит для изменения метки тома на обрабатываемом диске. После выбора команды открывается диалоговое окно, в котором пред­лагается напечатать новую метку тома. Сделав это, выдайте подкоманду ОК. Здесь же можно не только изменить, но и удалить метку тома. Для реализации этого новую метку не печатайте, а просто выдайте подкоманду Delete.

NCD позволяет сделать метки тома более выразительными, чем DOS-команда LABEL. Причины кроются в том, что при задании метки допускаются практически любые символы, в том числе псевдографические, разделители и пробелы. Кроме того, преобразование строчных букв в про­писные не производится, а следовательно, при отображении метки Вы сможете их наблюдать в первоначально заданном виде. Однако такие «вольности» допустимы лишь тогда, когда Вы вообще решили отказаться от использования соответствующих средств DOS.

Подменю dlRectory включает команды Print tree, Rename, Make, Delete, tree Size, copY tree, remove Tree, prune &-Graft и Configuration.

Команда Print tree (оперативный вариант — Alt-P) обеспечивает вывод дерева каталогов текущего диска на посимвольное ПУ или запись его в файл. После выдачи этой команды открывается диалоговое окно, показанное на рис. 8.119. В его текстовой области в качестве адресата по умолчанию предлагается PRN, однако это устройство можно заменить на любое другое или на спецификацию файла Затем нужно установить один из следующих режимов печати:

Tree, Graphics chars               — для вывода дерева с использованием псевдографических символов, как на экране (применяется тогда, когда активная кодовая страница принтера содержит псевдографику);

Tree, Non-graphics chars       — для вывода дерева с печатью дуг при помощи символов-разде­лителей, что менее наглядно;

List                                         — для вывода только списка спецификаций каталогов (используется обычно с файлом в качестве адресата, чтобы можно было затем создать командный файл по обработке этого списка).

 

 

Рис. 8.119. Диалоговое  окно  Print  Tree

 

Чтобы начать печать (или инициировать запись в файл), нужно выдать подкоманду Print.

Команда Rename (оперативный вариант — F6) предназначена для переименования помарки­рованного на главном экране каталога. Вслед за ее выдачей открывается диалоговое окно, в котором следует напечатать новое имя каталога и выдать подкоманду ОК. Правила задания имен каталогов и ограничения здесь такие же, как и при спецификации метки тома. Дополнительно заметим, что нет никакой целесообразности присваивать каталогам короткие имена, так как полные имена каталогов при наличии утилиты NCD Вам придется задавать редко. Рекомендуется даже задействовать и поле расширения. Каталогам по вполне понятным причинам лучше давать имена, различающиеся по крайней мере первыми тремя символами.

Команда Make (оперативный вариант — F7) служит для создания каталога в помаркированном на главном экране каталоге. В открывшемся после выбора команды диалоговом окне нужно ввести имя нового каталога и выдать подкоманду ОК.

Команда Delete (оперативный вариант — F8) обеспечивает удаление помаркированного на главном экране каталога.

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

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

Однако если каталог содержит подкаталоги и/или файлы с атрибутом R, то он в целях безопасности не удаляется — так же, как не удаляются и содержащиеся в нем файлы.

Команда tree Size предназначена для подсчета размера дискового пространства, занимаемого тем поддеревом файловой структуры, корень которого помаркирован на главном экране. После выполнения этой операции откроется окно, в котором будут выданы следующие сведения в байтах:

Total size of files                    суммарный размер файлов;

Total allocated space              — суммарный размер выделенной для размещения файлов области, обычно несколько превосходящий первое число по причине того, что память на диске выделяется дискретно.

Команда copY tree (оперативный вариант — AU-F5) служит для копирования или пересылки того поддерева файловой структуры, корень которого помаркирован на главном экране. После ее выдачи открывается диалоговое окно Select Directory. В нем нужно указать каталог, в который требуется поместить копию поддерева файловой структуры. Это можно сделать, напечатав в области Copy the tree to спецификацию целевого каталога или выбрав его в областях Drives и/или Sub-Directories. Если в этом же окне включить опцию Delete original files, то исходное поддерево файловой структуры будет после копирования удалено, благодаря чему и реализуется операция пересылки вместо копирования. Когда опция отключена, то опасаться за оригинал Вам не следует.

Команда remove Tree (оперативный вариант — AU-F8) обеспечивает удаление того поддерева файловой структуры, корень которого помаркирован на главном экране. Выдача команды приводит к открытию диалогового окна с предупреждением о том, что все файлы в поддереве будут удалены. Для продолжения операции выберите в нем подкоманду Remove. Вследствие этого откроется еще одно диалоговое окно, в котором перечисляются содержащиеся в корне поддерева файлы и задается вопрос о необходимости удаления. В качестве подтверждающего ответа выдайте Yes.

Команда prune & Graft (оперативный вариант — Alt-G) предназначена для перемещения поддерева файловой структуры с одного места на другое, причем только на том же диске. Данная команда зачастую удобнее и нагляднее, чем copY tree. После выдачи команды открывается диалоговое окно, показанное на рис. 8.120. В нем нужно выполнить следующие действия:

1) намаркировать корень исходного поддерева, используя клавиши управления курсором или средства быстрого поиска;

2) выдать подкоманду Prune (отрезать), в результате чего исходное поддерево выделяется, а подкоманды Prune и Close (закрыть) заменяются соответственно на Graft (приклеить) и Cancel;

3) переместить исходное поддерево файловой структуры в нужное место, используя клавиши управления курсором или средства быстрого поиска;

4) выдать подкоманду Graft.

 

 

Рис.  8.120.  Пример  диалогового  окна  Prune  and  Graft

 

Отменить выполнение команды можно в любой момент (но до п. 4) путем выдачи подкоманды Close (Cancel) или нажатия клавиши Esc.

Команда Configure служит для управления возможностью выдачи команд copY tree, remove Tree и prune & Graft. Ее выбор приводит к открытию диалогового окна, в котором нужно включить соответствующие опции для разрешения выдачи данных команд или отключить соот­ветствующие опции для предотвращения возможности их использования. Сделанные установки сохраняются в файле NORTON.INI.

Подменю View содержит команды 25 lines, 35 lines и 43 lines, если ПЭВМ оборудована EGA-видеосистемой, или команды 25 lines, 40 lines и 50 lines, если компьютер снабжен VGA-видеосистемой. Выбор той или иной команды изменяет число строк, отображаемых на экране, позволяя повысить информативность экрана дисплея или вместо этого облегчить считывание его содержимого человеком.