НАЗВА¶
wcd - довільна
зміна
каталогу (Wherever
Change Directory)
засіб для
зміни
каталогу (chdir)
у DOS та Unix
КОРОТКИЙ ОПИС¶
wcd [параметри] [каталог]
ОПИС¶
Огляд¶
Wcd — програма,
що
керується
з
командного
рядка і
надає
змогу
швидко
змінювати
каталоги.
Вона
економить
час на
введенні
даних з
клавіатури.
Достатньо
ввести
лише
частину
назву
каталогу і wcd
перейде до
цього
каталогу. У wcd
передбачено
можливості
пришвидшення
вибору
потрібного
варіанта з
декількох,
створення
альтернативних
назв
каталогів
та
блокування
каталогів.
Крім того, у
wcd ви зможете
скористатися
повноекранною
інтерактивною
навігацією
деревом
каталогів
з швидким
пошуком.
Ідеї wcd
часткового
запозичено
з Norton Change Directory (NCD).
Першу
версію NCD у
The Norton
Utilities, Release 4 для DOS
було
випущено 1987
року
компанією
Пітера
Нортона (Peter Norton).
Wcd було
портовано
на різні
командні
оболонки: command.com
для DOS, cmd.exe та PowerShell
для Windows, cmd.exe для OS/2
і командні
оболонки Unix,
зокрема Bourne (sh), Bourne
Again (bash), Korn (ksh), Z (zsh) та C (csh), а
також інші
оболонки,
що
працюють у
будь-якій
операційній
системі.
У Wcd
передбачено
підтримку
8-бітових
наборів
символів
на усіх
системах
та
додаткову
підтримку
Unicode.
Докладніше
про це у
розділі
«ЛОКАЛІЗАЦІЯ».
Щоб
дізнатися
більше про
налаштовування
wcd для
особистого
користування,
зверніться
до розділу
«ВСТАНОВЛЕННЯ».
Основні прийоми використання¶
Типово
(якщо не
використано
символів-замінників),
wcd шукає
каталог,
назва
якого
починається
з введених
вами
символів.
Наприклад,
вказана
нижче
команда
змінить
каталог на
каталог
поточного
користувача
"/home/user/Desktop":
wcd Desk
Якщо буде
виявлено
декілька
відповідників,
wcd покаже
користувачеві
список цих
відповідників.
Після
цього
користувач
зможе
вибрати
потрібний
варіант
декількома
натисканнями
клавіш
(найчастіше,
достатньо
одного
натискання).
Шаблони-замінники¶
У wcd
передбачено
підтримку
таких
символів-замінників:
* відповідає будь-якій послідовності символів (нульової або більшої довжини)
? відповідає довільному символу
[НАБІР] відповідає довільному символу з вказаного набору,
[!НАБІР] або [^НАБІР] відповідає будь-якому символу, що не належить до вказаного набору.
Набір
символів
може
складатися
з окремих
символів
або
діапазонів
символів.
Діапазон
слід
вказувати
так:
символ
дефіс
символ,
наприклад,
"0-9" або "A-Z".
Мінімальним
набором
символів у
конструкції
"[..]" є "[0-9a-zA-Z_]".
Можна
використовувати
символи з
розширеного
набору
(тобто
8-бітові
символи),
якщо у
системі
передбачено
підтримку
цих
символів.
Щоб
придушити
використання
символів з
набору "[]*?!^-\"
для
побудови
синтаксичних
лексем у
межах
конструкцій
"[..]" тобто
їхнього
буквального
використання,
додавайте
перед цими
символами
символ
зворотної
риски ("\").
Використання
символів-замінників
надає
доступ до
досить
потужних
можливостей
з пошуку.
Наприклад,
за
допомогою
вказаного
нижче
виразу
можна
знайти
будь-який
каталог,
назва
якого
завершується
на «top»:
wcd *top
Знайти
каталоги, у
назві яких
будь-де
міститься
частина «top»:
wcd *top*
Знайти
будь-який
каталог,
назва
якого
починається
з «a», «b» або
«c»:
wcd [a-c]*
Крім того,
можна
вказати
частину
шляху до
каталогу. У
наведеному
нижче
прикладі wcd
шукатиме
каталог,
назва
якого
починається
з «Desk», шлях
якого
відповідає
шаблону
*me/Desk*.
wcd me/Desk
Можна
використовувати
будь-який
вираз, що
містить
риски та
символи
замінники.
Приклад:
wcd src*/*1?/a*2
Інші варіанти використання¶
Якщо у
виразі не
використано
символів-замінників,
а wcd
знаходить
повний
відповідник
з вказаним
шляхом і
назвою, wcd
типово
проігнорує
усі
відповідники,
які могло б
бути
знайдено з
використанням
символів-замінників.
Типову
поведінку
програми
можна
змінити за
допомогою
параметра
-w.
Інтерактивний
навігатор
ієрархією
каталогів
можна
запустити
за
допомогою
параметра
-g.
wcd -g
Wcd створює
файл даних
ієрархії (treedata)
у
каталогах,
звідки
виконується
пошук. У
системах Unix
та Windows wcd додає
символічні
посилання
на файл treedata
під час
сканування
диска, але
не
переходить
за
створеними
посиланнями.
Перехід за
посиланнями
може
призвести
до
зациклювання
wcd у ієрархії
каталогів
або
сканування
великих
масивів
каталогів
у мережі.
Крім того, wcd
може
переходити
до
каталогів,
яких немає
у файлі treedata.
Приклад:
wcd ..
Якщо wcd буде
виявлено
відповідник
критерію
пошуку, але
програма
не зможе
перейти до
цього
каталогу,
буде
виконано
спробу
вилучення
каталогу з
типового
файла treedata, але
не з
додаткового
файла treedata. Див.
також
параметр
-k.
Wcd зберігає
на диску
стос
переходів
за
каталогами.
Типовим
обсягом
стосу є 10.
Перехід
стосом
здійснюється
циклічно.
Див.
параметри
-z,
-,
+ та
=.
У
середовищах
з
декількома
користувачами
для
переходу
до
каталогів,
що
належать
іншим
користувачам,
можна
скористатися
параметром
-u.
У
операційних
системах DOS і
Windows можна
використовувати
як
роздільник
між
каталогами
як символ
«/», так і
символ «\».
У системах DOS
та Windows
передбачено
можливість
переходу
до
каталогу
на іншому
диску. Для
цього
достатньо
перед
назвою
каталогу
на диску
вказати
назву
диска.
wcd d:games
Шляхи UNC Windows¶
У версіях
для Windows (для
командного
рядка, PowerShell, MSYS, zsh, cygwin)
передбачено
підтримку
шляхів UNC LAN Windows
для SMB без
літер
дисків,
наприклад
"\\назва_сервера\назва_ресурсу".
У wcd для
командного
рядка Windows для
автоматичного
прив’язування
шляху UNC до
літери
диска
використовується
команда
«pushd». У In Windows PowerShell, MSYS, zsh
та Cygwin
передбачено
повноцінну
підтримку
шляхів UNC.
Шлях UNC може
бути
поточним
робочим
каталогом.
Інтерфейси¶
У wcd
передбачено
три різні
інтерфейси
вибору
потрібного
варіанта
зі списку
відповідників.
Інтерфейс
можна
вибрати
під час
збирання
програми.
Першим
інтерфейсом
є звичайні
інтерфейси
введення
та
виведення
(stdin/stdout). До
термінала
буде
виведено
нумерований
список
варіантів.
Користувач
зможе
вибрати
відповідний
варіант
введенням
його
номера з
наступним
натисканням
клавіші <Enter>.
У цьому
інтерфейсі
не
передбачено
можливостей
гортання
для довгих
списків.
Для цього
доведеться
користуватися
можливостями
з гортання
термінала
або
консолі.
Код цього
інтерфейсу
доволі
малий і
портований.
Другий
інтерфейс
побудовано
на основі
бібліотеки
conio. У ньому
передбачено
можливості
гортання.
Користувачу
буде
показано
список з
літерним
позначенням
пунктів.
Для вибору
пункту у
списку
достатньо
натиснути
клавішу з
відповідною
літерою.
Цей
інтерфейс
працює
швидше,
оскільки
треба
натискати
менше
клавіш.
Після
вибору
варіанта,
якщо це
можливо,
зображення
на екрані
буде
відновлено
до стану
перед
показом
варіантів.
Якщо
користувач
надає
перевагу
цифровому
позначенню
пунктів,
можна
скористатися
параметром
-N.
Третій
інтерфейс
побудовано
на основі
бібліотеки
curses. Він
подібний
до
інтерфейсу
на основі conio.
Версія wcd на
основі curses
має
додатковий
«графічний»
інтерфейс.
За його
допомогою
користувач
зможе
вибрати
каталог у
повноекранному
інтерактивному
навігаторі
ієрархією
каталогів.
Передбачено
навігацію
та пошук у
стилі
vim(1).
Задіяти
цей
інтерфейс
можна за
допомогою
параметра
-g.
За
допомогою
параметра
командного
рядка
-o
програму
можна
завжди
перевести
до
стандартного
інтерфейсу
stdin/stdout.
ПАРАМЕТРИ¶
- -a
- Додати
поточний
шлях до
типового
файла
ієрархії.
За
допомогою
цього
параметра
можна
швидко
додати
поточний
шлях до
типового
файла
ієрархії
каталогів.
Повторне
сканування
усього
диска у
певних
випадках
може бути
досить
тривалою
справою.
- -aa
- Додати
поточний і
усі
батьківські
шляхи до
типового
файла
ієрархії
каталогів
(treedata).
- -A ШЛЯХ
- Сканувати
ієрархію
каталогів,
починаючи
з каталогу
ШЛЯХ, і
дописати
усі
виявлені
каталоги
до файла
ієрархії
каталогів
(treedata).
Приклади:
wcd -A .
wcd -A /home -A /etc
wcd -A d: -A e: -A \\server\share
У Windows можна
виконати
сканування
усіх
каталогів
спільного
використання
на сервері
локальної
мережі Windows за
допомогою
такої
команди: "wcd -A
\\назва_сервера".
Див. також
параметри
-S, -s та -E.
- -b
- Заблокувати
поточний
шлях.
Wcd додає
поточний
шлях до
файла
блокування.
Це означає,
що wcd
ігноруватиме
усі
відповідники
з
поточного
каталогу і
усіх його
підкаталогів.
Файл
блокувань
(ban) можна
редагувати
у
текстовому
редакторі.
Передбачено
підтримку
символів-замінників.
Відповідність
назв
встановлюється
за
абсолютними
шляхами.
Заблоковані
шляхи не
виключаються
зі шляхів
сканування
диска. Щоб
виключити
заблоковані
шляхи,
скористайтеся
параметром
-xf.
- -c, --direct-cd
- Безпосередній
режим CD.
Типово, wcd
працює так:
1. Спробувати знайти відповідник у файлах ієрархії (treedata).
2. Якщо нічого не знайдено, спробувати відкрити каталог, назву якого було введено.
У
безпосередньому
режимі CD wcd
виконує
обробку
запиту у
зворотному
порядку.
1. Cпробувати відкрити каталог, назву якого було введено.
2. Якщо не вдалося, знайти відповідник у файлах ієрархії (treedata).
- -d ДИСК
- Встановити
диск для
файла
стосу і
переходу
(лише для DOS).
Типово,
файл стосу
та скрипт
переходу
зберігаються
на диску C:,
якщо не
встановлено
значення
змінної
середовища
HOME. Цим
параметром
можна
скористатися,
якщо диск C:
захищено
від запису.
Цей
параметр
слід
вказувати
перед
параметрами
роботи зі
стосом -, +
та =.
- -e
- Додати
поточний
шлях до
додаткового
файла
ієрархії.
За
допомогою
цього
параметр
можна
швидко
додати
поточний
шлях до
додаткового
файла
ієрархії.
- -ee
- Додати
поточний і
усі
батьківські
шляхи до
додаткового
файла
ієрархії
каталогів
(treedata).
- -E ШЛЯХ
- Сканувати
ієрархію
каталогів,
починаючи
з каталогу
ШЛЯХ, і
дописати
усі
виявлені
каталоги
до
додаткового
файла
ієрархії
каталогів
(treedata). Див.
також
параметри
-A та -S.
- -f ФАЙЛ
- Прочитати
файл даних
ієрархії
каталогів
ФАЙЛ. Не
виконувати
читання з
типового
файла
ієрархії
каталогів.
- +f ФАЙЛ
- Прочитати
дані з
файла
ієрархії
каталогів
ФАЙЛ на
додачу до
даних з
типового
файла
даних
ієрархії
каталогів.
- -g
- Графічний
інтерфейс
(лише у
версії з
інтерфейсом
на основі curses).
Wcd запускає
текстовий
«графічний»
інтерфейс
на основі curses.
Користувач
може
вибрати
каталог за
допомогою
повноекранного
інтерактивного
навігатора
ієрархією
каталогів.
Передбачено
навігацію
і пошук у
стилі vim(1).
Якщо рядок
пошуку не
вказано, wcd
показує
усю
ієрархію
каталогів
з типового
та
додаткового
файлів
даних
ієрархії.
Якщо рядок
пошуку
вказано,
список
відповідників
буде
показано
як
ієрархію
каталогів.
Типове
компонування
ієрархії
подібне до
компонування
каталогів
у
початковій
версії NCD у DOS.
Різниця у
компонуванні
полягає у
тому, що у NCD
усі
каталоги
одного
рівня було
вирівняно
однаковим
відступом
у всьому
дереві. Це
було
можливим у
NCD, оскільки
максимальна
довжина
назви
каталогу у
DOS
дорівнювала
12 (8.3) символам.
У сучасних
операційних
системах
назви
каталогів
можуть
бути дуже
довгими і
різниця у
довжинах
може бути
дуже
великою.
Тому теки
однакового
рівня
вкладеності
не
вирівняно
за однією
лінією за
усією
ієрархією
каталогів
у wcd, а лише за
гілками
ієрархії.
Отже, під
час руху
вгору-вниз
ієрархією
каталогів
користувач
спостерігатиме
за зсувами
списку у
різні боки.
Навігаційна
поведінка
у wcd
абсолютно
збігається
з
початковою
версією NCD.
Наприклад,
якщо ви
натиснете
клавішу зі
стрілкою
вниз, ви
перейдете
до
наступного
каталогу з
тим самим
рівнем
вкладеності,
переходячи
гілками
ієрархії.
Це
пришвидшує
навігацію
ієрархією
каталогів.
Поведінку
засобу
навігації
можна
змінити за
допомогою
параметрів
-Ta, -TC та -Tc.
- -gd
- Створити
дамп
файлів
ієрархії
каталогів
(treedata) і
вивести
дані до
стандартного
виведення
(stdout).
- -G ШЛЯХ
- Записати
скрипт
переходу у
каталозі
ШЛЯХ.
Наприклад,
у Unix, "wcd -G ШЛЯХ"
призведе
до запису
скрипту
переходу
до ШЛЯХ/wcd.go.
- -GN, --no-go-script
- Не
створювати
скрипт
переходу.
Цим
параметром
можна
скористатися
у
поєднанні
з
параметром
-j, якщо з
якихось
причин
створення
wcd скрипту
переходу є
небажаним.
- -h, --help
- Показати
довідку
щодо
використання
і
завершити
роботу.
- -i, --ignore-case
- Ігнорувати
регістр
символів. У
версіях wcd
для DOS та Windows
така
поведінка
є типовою.
У версіях
для Unix/Cygwin
регістр
типово
враховується.
- +i, --no-ignore-case
- Брати до
уваги
регістр
символів.
Див. також
параметр
-i.
- -I, --ignore-diacritics
- Ігнорувати
діакритичні
знаки для
писемностей
на основі
латиниці.
Програма
вважатиме
літери з
діакритичними
знаками
еквівалентними
до їхніх
відповідників
без
діакритичних
знаків.
Передбачено
підтримку
таких
кодувань
латиниці: CP437,
CP850, CP852, CP1250, CP1252, ISO-8859-1, ISO-8859-2 та
Unicode Latin-1, Latin Extended-A, а
також Latin Extended-B.
Див. також
<https://uk.wikipedia.org/wiki/Діакритичний_знак>
- +I, --no-ignore-diacritics
- Брати до
уваги
діакритичні
позначки
(типово).
Див. також
параметр
-I.
- -j, --just-go
- Режим
простого
переходу.
У цьому
режимі wcd не
показуватиме
списку,
якщо для
вказаної
назви буде
знайдено
декілька
відповідників.
Wcd просто
перейде до
першого ж
відповідника.
Якщо wcd буде
викликано
знову з
тими
самими
аргументами,
програма
змінить
каталог на
наступний
пункт у
списку
тощо.
Wcd виведе
назву
каталогу,
що якого
переходитиме
до
стандартного
виведення
(stdout). Отже
можна
скористатися
декількома
способами
встановлення.
Можна
створити
таку
функцію
для
сумісної з
POSIX
командної
оболонки:
wcd ()
{
cd "$($HOME/bin/wcd.exe -j $@)"
}
Якщо ви
користуєтеся
застарілою
командною
оболонкою,
у якій не
передбачено
підтримки
заміни
команди
«$()», вам
доведеться
скористатися
підставлянням
команди у
застарілому
стилі з
одинарними
відкривними
лапками.
wcd ()
{
cd "`$HOME/bin/wcd.exe -j $@`"
}
У системах
Windows, якщо
використано
командну
оболонку 4NT,
можна
створити
такі
альтернативні
назви:
alias wcd `cd %@execstr[wcdwin32.exe -z 0 -j %1]`
Подібний
метод
усуває
потребу у
скрипті
переходу,
отже,
параметр -j
можна
використати
у
поєднанні
з
параметром
-GN.
- -k, --keep-paths
- Зберігати
шляхи.
Зберігати
шляхи до
файла
даних
ієрархії
каталогів,
якщо wcd не
може
перейти до
відповідного
каталогу.
Типовою
поведінкою
програми є
вилучення
шляхів з
файла
даних
ієрархії,
якщо wcd не
може
перейти до
відповідного
каталогу.
Якщо буде
використано
цей
параметр,
програма
не
вилучатиме
відповідних
записів
каталогів.
- -K, --color
- Використовувати
кольори у
графічному
режимі.
- -l
АЛЬТЕРНАТИВНА
НАЗВА
- Надати
поточному
шляху
альтернативну
назву
АЛЬТЕРНАТИВНА
НАЗВА. Wcd
запише
поточний
шлях з його
альтернативною
назвою до
файла
альтернативних
назв.
Альтернативні
назви з
різним
регістром
символів
вважаються
різними.
- -m КАТАЛОГ
- Створити
каталог і
додати
його до
файла
даних
ієрархії.
- -L, --license
- Вивести
дані щодо
умов
ліцензування.
- -M КАТАЛОГ
- Створити
каталог і
додати
його до
додаткового
файла
даних
ієрархії.
- -n ШЛЯХ
- Прочитати
відносний
файл даних
ієрархії
каталогів
з каталогу
ШЛЯХ.
Не
виконувати
читання з
типового
файла
даних
ієрархії
каталогів.
Файл даних
відносних
шляхів до
каталогів
має бути
вже
створено
за
допомогою
параметра
wcd +S. Крім
того, ШЛЯХ
може
безпосередньо
вказувати
на файл.
Приклад.
Припустімо,
що іншу
систему
змонтовано
до точки
монтування
"/mnt/network":
wcd -n /mnt/network src
Wcd відкриває
файл даних
відносних
шляхів до
каталогів
у "/mnt/network/". У
цьому
файлі
містяться
шляхи
відносно
відповідного
каталогу.
- +n ШЛЯХ
- Прочитати
дані з
файла
даних
відносної
ієрархії
каталогів
на додачу
до даних з
типового
файла
даних
ієрархії
каталогів.
Див.
параметр
-n.
- -N, --numbers
- Використовувати
числа
замість
літер.
Wcd з
інтерфейсом
на основі conio
або curses (див.
розділ
«ІНТЕРФЕЙС»)
типово
показує
список
варіантів
з пунктами,
позначеними
літерами.
Якщо
використано
параметр
-N, пункти у
списку
буде
пронумеровано.
Незалежно
дві
параметра
-N,
користувач
може
натиснути
клавішу з
літерою
або
номером
для вибору
пункту зі
списку
відповідників.
- -o
- Використовувати
інтерфейс
stdin/stdout.
Якщо з
певних
причин
інтерфейсом
на основі conio
або curses у wcd не
можна або
не бажано
користуватися,
користувач
може
перемкнути
програму
на
інтерфейс
stdin/stdout за
допомогою
параметра
-o.
- -od, --to-stdout
- Вивести
усі
відповідники
до stdout.
- -q, --quiet
- Менше
повідомлень.
Останній
відповідник
не
виводиться
до
консолі.
- -r КАТАЛОГ
- Вилучити
каталог і
відповідний
запис з
файла
даних
ієрархії
каталогів.
Якщо
каталог є
порожнім, wcd
вилучить
його і
спробує
вилучити
відповідний
запис з
файла
даних
ієрархії
каталогів.
- -rmtree
КАТАЛОГ
- Рекурсивно
вилучити
каталог і
відповідні
записи з
файла
даних
ієрархії
каталогів.
Wcd вилучить
каталог та
усі його
підкаталоги
та файли і
витре
записи
відповідних
каталогів
з файла
даних
ієрархії
каталогів.
- -s
- Виконати
сканування
або
повторне
сканування
диска,
починаючи
з каталогу
$HOME. Якщо
значення
змінної HOME
не
визначено,
сканування
диска
виконуватиметься,
починаючи
з
кореневого
каталогу, /.
Наявний
типовий
файл даних
ієрархії
каталогів
буде
перезаписано.
Типовий
каталог
сканування
можна
перевизначити
за
допомогою
змінної
середовища
"WCDSCAN". Див.
розділ
«ЗМІННІ
СЕРЕДОВИЩА».
- -S ШЛЯХ
- Виконати
сканування
ієрархії
каталогів,
починаючи
з каталогу
ШЛЯХ, і
перезаписати
типовий
файл даних
ієрархії
каталогів.
Див. також
параметри
-A, -s та -E.
Наприклад,
з
параметром
-A ви
можете
створити
типовий
файл даних
ієрархії
каталогів
за вашим
вибором.
Приклади:
Unix:
wcd -S /
wcd -S /home -A /etc -A /usr
DOS/Windows:
wcd -S c:/
wcd -S c: -A d: -A \\server\share
У версіях
для Windows можна
виконати
сканування
усіх
каталогів
спільного
використання
на сервері
локальної
мережі Windows за
допомогою
такої
команди: "wcd -S
\\назва_сервера".
- +S ШЛЯХ
- Сканувати
диск,
починаючи
з каталогу
ШЛЯХ, і
замінити
відносні
шляхи у
файлі
даних
відносної
ієрархії
каталогів.
Цей файл
використовується,
якщо
додано
параметри
-n і +n.
Приклад: "wcd -n
ШЛЯХ
джерело".
- -t
- Не
вилучати
із записів
рядок
тимчасового
каталогу
монтування,
"/tmp_mnt" (лише у Unix)
Типово, wcd
вилучає
"/tmp_mnt/" з
відповідників.
Каталог
"/tmp_mnt"
використовується
засобом
автоматичного
монтування.
Таку
обробку
можна
вимкнути
за
допомогою
параметра
-t.
- -T, --ascii-tree
- Малювати
ієрархію
за
допомогою
символів ASCII.
Скористайтеся
цим
параметром,
якщо
символи
малювання
ліній у
терміналі
буде
показано з
помилками.
- -Ta, --alt-tree-nav
- Альтернативний
режим
навігації
у форматі
графічної
ієрархії
каталогів.
У типовому
режимі
компонування
ієрархії у
стилі NCD
параметр
-Ta вимикає
перехід до
непов’язаних
каталогів.
У режимі
компактної
ієрархії
альтернативний
режим
робить
навігацію
подібною
до
навігації
у
програмах
для
керування
файлами з
графічним
інтерфейсом,
зокрема
Провіднику
Windows або KDE Konqueror у Linux.
Натискання
клавіш зі
стрілками
вгору і
вниз
пересуває
позначення
теки на
один рядок
вгору або
вниз.
Першим
натисканням
клавіші зі
стрілкою
ліворуч
можна
згорнути
підтеки,
наступне
натискання
— перехід
ліворуч.
Перемкнутися
між
режимами
типової і
альтернативної
навігації
без
перезапуску
програми
можна за
допомогою
натискання
комбінації
клавіш Shift-A.
Якщо
увімкнено
режим
альтернативної
навігації,
у нижньому
правому
куті
екрана ви
побачите
літеру «A».
- -TC, --center-tree
- Центрований
режим
перегляду
у
графічній
ієрархії.
Позначений
каталог
залишається
посередині
екрана.
Центрований
режим
можна
увімкнути
або
вимкнути
за
допомогою
натискання
клавіші «t»
у режимі
графічної
ієрархії.
Стандартний
нецентрований
режим, який
мінімізує
рух самої
ієрархії
на екрані,
аналогічний
до
оригінального
режиму NCD.
- -Tc, --compact-tree
- Типово,
«графічну»
ієрархію
буде
намальовано
у той самий
спосіб, як
це робила
початкова
версія NCD
для DOS. У DOS
шлях до
каталогу
може
складатися
не більше
ніж з 66
символів.
Використання
сучасної
структури
каталогів,
без
обмежень
на довжину
шляхів,
може
призвести
до
значного
перевищення
ширини
ієрархії.
Щоб
подолати
ці
труднощі, wcd
може
малювати
ієрархію
каталогів
у
компактному
форматі,
подібному
до формату
більшості
програм
для
керування
файлами з
графічним
інтерфейсом,
по одній
теці на
рядок.
Увімкнути
відповідний
режим
можна за
допомогою
параметра
-Tc або
перемикання
натисканням
клавіші
«m».
- -Td, --cjk-width
- У
застарілих
шрифтах
для показу
ієрогліфів
східноазійських
мов
(китайської,
японської
та
корейської)
частина
символів
ієрогліфів
та
символів
малювання
ліній
займають
дві
позиції
замість
звичайної
для Unicode
ширини цих
символів у
одну
позицію.
Прикладами
таких
шрифтів є
растровий
шрифт Chinese CP936
для Windows та
шрифт Simsun. За
допомогою
цього
параметра
можна
забезпечити
правильний
показ
графічної
ієрархії
каталогів
з
використанням
застарілих
шрифтів з
ієрогліфами.
Якщо
увімкнено
режим
ієрогліфів,
у нижньому
правому
куті
екрана ви
побачите
літеру «C».
- -u
КОРИСТУВАЧ
- Сканувати
файл даних
ієрархії
іншого
користувача,
КОРИСТУВАЧ,
не
сканувати
типовий
файл
ієрархії
поточного
користувача.
Див. також
розділ
ЗМІННІ
СЕРЕДОВИЩА,
а саме
запис щодо
змінної
WCDUSERSHOME.
У Unix/Cygwin
базовим
каталогом
для
домашніх
каталогів
користувачів
вважається
"/home". Wcd
шукатиме
файли
"/home/USER/.treedata.wcd" та
"/home/USER/.wcd/.treedata.wcd",
саме у
цьому
порядку, і
читатиме
дані з
першого ж
із цих
файлів,
який буде
знайдено і
який
виявиться
придатним
до читання.
У DOS/Windows
базовим
каталогом
для
домашніх
каталогів
користувачів
вважається
"\\users", отже, wcd
намагається
прочитати
дані з
файлів
"\\users\USER\treedata.wcd" та
"\\users\USER\.wcd\treedata.wcd".
- +u
КОРИСТУВАЧ
- Прочитати
дані з
типового
файла
ієрархії
каталогів
користувача
КОРИСТУВАЧ
на додачу
до даних з
типового
файла
даних
ієрархії
каталогів
вашого
користувача.
- -v, --verbose
- Показувати
докладні
повідомлення.
З цим
параметром
wcd
виводитиме
усі
фільтри,
блокування
та
виключення.
- -V, --version
- Показати
дані щодо
версії і
завершити
роботу.
- -w, --wild-match-only
- Встановлення
відповідність
для
неточних
відповідників,
лише якщо
використано
символи-замінники.
- -x ШЛЯХ
- Виключити
ШЛЯХ зі
сканування.
Якщо буде
використано
цей
параметр, wcd
виключить
шлях з
назвою
ШЛЯХ та
усі його
підкаталоги
з переліку
шляхів для
сканування
диска.
Передбачено
підтримку
символів-замінників
та
встановлення
відповідності
за
абсолютними
шляхами.
Параметр -x
у команді
можна
використовувати
декілька
разів.
wcd -x <шлях1> -x <шлях2> -s
Параметр -x
слід
вказувати
до усіх
параметрів
сканування
( -s, -S, +S, -A, -E).
У системах
DOS/Windows слід
вказати
літеру
диска, якщо
не
визначено
змінної
середовища
HOME або WCDHOME.
Приклад:
wcd -x c:/temp -S c:
У інших
випадках
літеру
диска не
слід
вказувати.
wcd -x /temp -s
- -xf ФАЙЛ
- Виключити
зі
сканування
усі шляхи,
вказані у
файлі
ФАЙЛ.
Якщо
використано
цей
параметр, wcd
виключить
усі шляхи
зі списку у
файлі
ФАЙЛ та
усі
підкаталоги
цих шляхів
зі
сканування
диска.
Передбачено
підтримку
символів-замінників
та
встановлення
відповідності
за
абсолютними
шляхами.
Шляхи має
бути
вказано по
одному на
рядок. Слід
пам’ятати,
що wcd
ігноруватиме
початкові
та
завершальні
пробіли у
рядку,
оскільки
такі
пробіли є
некоректними
символами
у назвах
каталогів.
Параметр
-xf можна
вказувати
декілька
разів. Якщо
ви хочете
виключити
усі
заблоковані
шляхи зі
сканування,
можна
зробити
так
(приклад
для wcd у unix):
wcd -xf ~/.ban.wcd -s
Передбачено
підтримку
символів-замінників.
Наприклад,
щоб
виключити
усі
каталоги
Subversion з
файлами,
призначеними
для
адміністрування
копії
сховища,
додайте
рядок "*/.svn".
Параметр -xf
слід
вказувати
до усіх
параметрів
сканування
( -s, -S, +S, -A, -E).
- -y, --assume-yes
- Вважати
відповіддю
на всі
питання
«так».
Wcd не
проситиме
користувача
підтвердити
дію
відповіддю
«так» або
«ні»,
відповіддю
завжди
вважається
«так». Цей
параметр
можна
поєднати з
параметром
-rmtree.
Параметр
слід
вказувати
до
параметрів,
використання
яких може
призвести
до появи
питань, на
які має
відповідати
користувач.
- -z ЧИСЛО
- Встановити
для
максимального
розміру
стосу
значення
ЧИСЛО.
Типовим
розміром
стосу є 10.
Дії зі
стосом
можна
вимкнути
встановленням
значення 0.
Цей
параметр
слід
використовувати
перед
будь-якими
іншими
параметрами,
що
призводять
до дій зі
стосом (
-,+,=). Якщо
цього не
зробити,
стосу буде
повернуто
типовий
розмір 10.
Правильна
команда:
wcd -z 50 -
Новим
розміром
стосу буде
50, wcd перейде
на один
крок назад
у стосі.
Помилковою
була б така
команда:
wcd - -z 50
Wcd
повернеться
на один
каталог
назад у
стосі,
розміру ж
стосу буде
повернуто
типове
значення 10.
Параметр -z
50 буде
проігноровано.
Додайте
цей
параметр
як перший
параметр
до
альтернативної
команди wcd
або
функції, де
ця
програма
використовується.
Приклад
для
сумісних з
POSIX
командних
оболонок:
wcd ()
{
wcd.exe -z 50 "$@"
. ${WCDHOME:-${HOME}}/bin/wcd.go
}
- -[ЧИСЛО]
- Повернутися
на ЧИСЛО
пунктів
назад у
стосі.
Типовим є
значення у
один пункт.
Повернутися
на один
каталог
назад.
Команда "wcd -"
поверне
вас на один
каталог
назад. Щоб
повернутися
на більшу
кількість
кроків,
додайте до
неї
кількість
кроків.
Приклад: "wcd
-3". Перехід
стосом
каталогів
є
циклічним.
- +[ЧИСЛО]
- Перейти
вперед на
ЧИСЛО
пунктів у
стосі.
Типовим є
значення у
один пункт.
Перейти
вперед на
один
каталог.
Команда "wcd +"
призведе
до
переходу
на один
каталог
вперед. Щоб
повернутися
на більшу
кількість
кроків,
додайте до
неї
кількість
кроків.
Приклад: "wcd
+2". Перехід
стосом
каталогів
є
циклічним.
- =
- Показати
стос.
Скористайтеся
цим
параметром,
якщо ви
призабули
скільки
пунктів
залишилося
попереду і
позаду у
стосі. У
відповідь
на команду
з цим
параметром
програма
виведе
вміст
стосу для
наступного
вибору
номера
пункту.
Поточне
місце у
стосі буде
позначено
зірочкою,
"*".
ВСТАНОВЛЕННЯ¶
Поточний
робочий
каталог
командної
оболонки Unix
можна
змінити
лише за
допомогою
вбудованої
команди
cd(1).
Тому
програму
завжди
викликають
функцією
або за
альтернативною
назвою. Ця
функція
або
альтернативна
назва
зберігається
у скрипті
командної
оболонки
(скрипті
переходу),
який
створюється
програмою wcd.
Wcd може
працювати
лише після
визначення
функції
або
альтернативної
назви.
Іншим
варіантом
внесення
змін до
поведінки
встановленої
вами
програми є
визначення
значень
змінних
середовища
HOME та
WCDHOME. Див.
розділ
ЗМІННІ
СЕРЕДОВИЩА.
Встановлення для командних оболонок типу POSIX¶
Для
командних
оболонок POSIX (ksh,
bash, zsh, etc.) у Unix, Linux, Cygwin або
типовій
оболонці MSYS
додайте
таку
функцію до
файла
запуску
оболонки
(наприклад,
у Bash
використовується
файл "$HOME/.bashrc"):
wcd ()
{
<ШЛЯХ>/wcd.exe "$@"
. ${WCDHOME:-${HOME}}/bin/wcd.go
}
Замініть
ШЛЯХ на
адресу
каталогу,
до якого
встановлено
виконуваний
файл wcd.
Перезавантажте
файли
ініціалізації
оболонки
або
запустіть
нову
оболонку.
Розташування
скрипту
переходу,
"wcd.go", є різним
для різних
оболонок.
Wcd для bash у DJGPP DOS
потрібна
інша
функція.
Скрипт
переходу
не буде
записано
до
каталогу
"bin" і, якщо
одночасно
визначено
WCDHOME та
HOME,
скрипт
переходу
буде
записано
до c:/.
wcd ()
{
<ШЛЯХ>/wcd.exe "$@"
. ${WCDHOME:-${HOME:-"c:"}}/wcd.go
}
Версія wcd для
WinZsh теж має
свої
особливості.
Немає
каталогу
"bin".
wcd ()
{
<ШЛЯХ>/wcd.exe "$@"
. ${WCDHOME:-${HOME}}/wcd.go
}
Докладніший
опис можна
знайти у
розділі
«ФАЙЛИ».
Встановлення для C-подібних командних оболонок (csh, tcsh)¶
Додайте
такі
альтернативні
назви до
файла
запуску
оболонки,
"$HOME/.cshrc" або "$HOME/.tcshrc" :
if ( ${?WCDHOME} ) then
alias wcd "<ШЛЯХ>/wcd.exe \!* ; source $WCDHOME/bin/wcd.go"
else
alias wcd "<ШЛЯХ>/wcd.exe \!* ; source $HOME/bin/wcd.go"
endif
Замініть
ШЛЯХ на
адресу
каталогу,
до якого
встановлено
виконуваний
файл wcd.
Перезавантажте
файли
ініціалізації
оболонки
або
запустіть
нову
оболонку.
Версія для командного рядка Windows¶
Розпакуйте
архів zip і
додайте
каталог "bin"
до вашої
змінної
середовища
PATH.
Програма
для Windows, що
працює у
вікні
командної
оболонки Windows
(Command Prompt) не може
змінити
поточного
каталогу,
але це може
зробити
скрипт .bat.
Пакетний
скрипт "wcd.ba"»
запускає
програму wcd,
яка
створює
новий
пакетний
скрипт, "wcdgo.bat".
Після
цього "wcd.bat"
запускає
скрипт "wcdgo.bat",
який
здійснює
зміну
каталогу.
Windows VISTA та новіші версії¶
У
командній
оболонці Windows VISTA
та новіших
версій
користувачі
мають
обмежений
доступ до
каталогів.
Що
отримати
доступ до
усіх
каталогів,
вам
знадобляться
права
доступу
адміністратора.
Запустити
командну
оболонку з
правами
адміністратора
можна так:
наведіть
вказівник
миші на
піктограму
командної
оболонки,
клацніть
правою
кнопкою
миші і
виберіть у
контекстному
меню пункт
Запуск від
імені
адміністратора.
Версія для Windows PowerShell¶
Додайте
вказану
нижче
функцію до
вашого
профілю
користувача
PowerShell. Дані щодо
місця
зберігання
цього
профілю
зберігаються
у змінній $profile.
Слід також
визначити
змінну
середовища
HOME або
WCDHOME.
function wcd
{
<ШЛЯХ>\wcdwin32psh.exe $args
& $env:HOME\wcdgo.ps1
}
Замініть
ШЛЯХ на
адресу
каталогу,
до якого
встановлено
виконуваний
файл wcd.
Запустіть
новий
сеанс
роботи у PowerShell. У
Wcd для PowerShell
передбачено
роботу
лише з
файловими
системами.
Забезпечення
роботи з
іншими
джерелами
файлових
даних не
передбачено.
Версія для командного рядка OS/2¶
У
командній
оболонці OS/2
(cmd.exe) програма
OS/2 не може
змінювати
робочого
каталогу.
Ось чому wcd
створює
командний
скрипт ("wcdgo.cmd"),
який має
бути
виконано у
поточній
оболонці.
Скрипт "wcd.cmd"
спочатку
запускає
програму
"wcdos2.exe", яка
створює
скрипт "wcdgo.cmd".
Після
цього "wcd.cmd"
запускає
скрипт wcdgo.cmd.
ЛОКАЛІЗАЦІЯ¶
- LANG
- Основна
мова
визначається
за
допомогою
змінної
середовища
LANG.
Значення
змінної LANG
складається
з
декількох
частин.
Перша
частина
записується
малими
літерами і
визначає
код мови.
Друга
частина є
необов’язковою,
визначає
код країни
і
записується
прописними
літерами,
відокремлюється
від першої
частини
символом
підкреслювання.
Передбачено
також
необов’язкову
третю
частину:
кодування.
Ця частина
відокремлюється
від другої
частини
крапкою.
Ось
декілька
прикладів
для
командних
оболонок
стандартного
типу POSIX:
export LANG=uk українська
export LANG=uk_UA українська, Україна
export LANG=ru_UA російська, Україна
export LANG=es_ES іспанська, Іспанія
export LANG=es_MX іспанська, Мексика
export LANG=en_USiso88591 англійська, США, кодування Latin-1
Повний
список мов
та кодів
краї
наведено у
підручнику
з gettext(1):
<http://www.gnu.org/software/gettext/manual/gettext.html#Language-Codes>.
У системах
Unix для
отримання
даних щодо
локалі
можна
скористатися
командою
locale(1).
- LANGUAGE
- За
допомогою
змінної
середовища
LANGUAGE ви
можете
вказати
список
пріоритетності
мов. Записи
у списку
слід
відокремлювати
двокрапками.
Програма wcd
надає
перевагу
LANGUAGE над LANG.
Наприклад,
перша
голландська,
далі
німецька:
"LANGUAGE=nl:de".
Спочатку
вам слід
увімкнути
локалізацію,
встановивши
для
змінної LANG
(або LC_ALL)
значення,
відмінне
від C. Далі
ви зможете
використовувати
список
пріоритетності
мов за
допомогою
змінної LANGUAGE.
Додаткові
відомості
можна
знайти у
підручнику
з gettext:
<http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAGE-variable>
Якщо вами
буде
вибрано
мову,
перекладу
якою немає,
буде
показано
стандартні
повідомлення
англійською
мовою.
- WCDLOCALEDIR
- За
допомогою
визначення
змінної
середовища
WCDLOCALEDIR можна
перевизначити
значення
LOCALEDIR, вказане
під час
збирання
та
встановлення
програми.
Змінна LOCALEDIR
використовується
wcd з
підтримкою
перекладів
для пошуку
файлів
перекладів.
Типовим
значенням
для
системи GNU є
"/usr/local/share/locale".
Дізнатися
про
поточне
значення
змінної LOCALEDIR
можна за
допомогою
команди "wcd
-V".
Якщо ви
встановили
wcd до
каталогу,
відмінного
від
типового,
вам варто
встановити
значення
змінної
середовища
WCDLOCALEDIR так, щоб
вона
вказувала
на каталог
з файлами
перекладів.
Приклад
для cmd у Windows:
set WCDLOCALEDIR=c:/my_prefix/share/locale
Приклад
для
оболонки POSIX:
export WCDLOCALEDIR=$HOME/share/locale
- LC_COLLATE
- Якщо wcd
вдасться
знайти
декілька
відповідників
вказаного
користувачем
каталогу,
програма
покаже
упорядкований
список
варіантів.
Спосіб
упорядковування
залежить
від
параметрів
локалі.
Якщо у
середовищі
встановлено
значення
змінної LANG,
відповідники
буде
упорядковано
відповідно
до порядку,
який
використовується
у
словниках
або
телефонних
книгах
відповідною
мовою.
Наприклад,
буде
проігноровано
крапки і
дефіси,
літери з
акцентами
вважатимуться
еквівалентними
до літер
без
акцентів,
ігноруватимуться
відмінності
у
написанні
великими
чи малими
літерами.
Під час
визначення
параметрів
упорядковування
перевага
надається
змінній
середовища
LC_COLLATE, а не
змінній LANG.
Якщо ви
вкажете
для LC_COLLATE
значення
"C" або "POSIX",
упорядковування
за
параметрами
локалі
буде
вимкнено.
Наприклад,
якщо ви
хочете
скористатися
українською
мовою
інтерфейсу,
але не
хочете
використовувати
українські
параметри
упорядковування,
ви можете
зробити
так:
export LANG=uk_UA
export LC_COLLATE=C
- LC_CTYPE
- Під час
визначення
параметрів
кодування
у wcd
надається
перевага
змінній LC_CTYPE,
а не LANG.
Наприклад,
щоб
встановити
кодування
символів UTF-8,
слід
скористатися
такою
командою:
export LC_CTYPE=en_US.UTF-8
- LC_ALL
- Усі змінні
середовища,
пов’язані
з локаллю,
назви яких
починаються
з LC_, можна
перевизначити
за
допомогою
змінної
середовища
LC_ALL. Wcd надає
перевагу
значенню
LC_ALL над
значеннями
LC_COLLATE та LC_CTYPE.
ТАБЛИЦІ КОДУВАНЬ WINDOWS¶
Існує дві
групи
кодових
сторінок:
кодові
сторінки DOS (OEM)
та кодові
сторінки Windows
(ANSI). Типовим
кодуванням
для Windows, якщо
систему
налаштовано
на
західноєвропейські
параметри
регіону, є ANSI
CP1252. У
програмах
Windows,
наприклад
у notepad,
використовується
ця типова
загальносистемна
кодова
сторінка ANSI.
У консолі Windows
типово
використовується
кодова
сторінка OEM (CP437
або CP850) для
сумісності
з
програмами
DOS. Якщо ви
використовуєте
версію wcd для
DOS у консолі Windows,
програма
не
працюватиме,
оскільки у
ній
використовується
кодова
сторінка DOS.
Але у
версії wcd для
DOS не
передбачено
підтримку
довгих
назв
каталогів
та
мережевих
дисків у Windows.
Версія wcd для
Windows є типовою
програмою
Windows, вона
використовуватиме
загальносистемну
кодову
сторінку ANSI Windows.
Отже, у
західноєвропейській
локалізації
Windows програма
використовуватиме
кодову
сторінку CP1252
для назв
каталогів
та
повідомлень.
З метою
забезпечення
однорідності
виведення
даних,
незалежно
від
активної
кодової
сторінки,
усі версії wcd
для Windows
перетворюють
виведені
дані у
форматі ANSI у
формат Unicode у
командній
оболонці
та PowerShell.
У
консольних
растрових
шрифтах
передбачено
оригінальну
кодову
сторінку OEM,
що
встановлюється
разом з Windows,
отже, вам
слід
змінити
шрифт
консолі на
Lucida Console, щоб
літери з Unicode
(та ANSI) було
показано
належним
чином.
Версії wcd без
підтримки
Unicode
до версії
5.2.0 виводять
дані у
форматі ANSI.
Для цих
застарілих
версій
кодову
сторінку
консолі
слід
зробити
еквівалентною
до
загальносистемної
кодової
сторінки
(змінюється
на 1252), щоб
забезпечити
належну
роботу wcd для
Windows зі
спеціальними
символами,
зокрема
символами
з
акцентами,
символами
кирилиці
та
символом
євро.
Загальносистемну
кодову
сторінку Windows
можна
змінити за
допомогою
регіональних
параметрів
«Панелі
керування».
Кодову
сторінку
консолі Windows
можна
змінити за
допомогою
команди "chcp".
Програма
виводить
дані щодо
справжнього
кодування
символів у
відповідь
на команду
"wcd -V". Щоб
визначити
активну
кодову
сторінку
консолі Windows,
введіть
команду "chcp".
UNICODE¶
У wcd може бути
передбачено
підтримку
Unicode. Щоб
визначити,
чи було
зібрано wcd з
підтримкою
Unicode,
скористайтеся
командою "wcd
-V". Якщо у
вашому
терміналі
або
консолі та
шрифті
передбачено
підтримку,
ви зможете
бачити
символ
євро та
китайські
ієрогліфи.
Перетворення
у Unicode у wcd
виконується
програмно.
У ядрі
програми
усі дані
обробляються
як потік
даних. У
широкі
символи Unicode
перетворюються
лише рядки,
що
виводяться
на екран. Wcd
повністю
покладається
на функції libc
і не
містить
специфічного
для UTF-8 коду.
Див. також
<
http://www.cl.cam.ac.uk/~mgk25/unicode.html>
У wcd
передбачено
необов’язкову
підтримку
встановлення
відповідності
за Unicode з
нормалізацією.
Щоб
визначити,
чи
передбачено
у wcd
підтримку
нормалізації,
скористайтеся
командою "wcd
-V". У wcd з
підтримкою
нормалізації
Unicode
відповідність
назв Unicode
виконується
на основі
сумісної
еквівалентності.
Без
підтримки
нормалізації
Unicode
відповідність
назв
встановлюється
за
двійковою
еквівалентністю.
Див. також
<
http://en.wikipedia.org/wiki/Unicode_normalization>
UTF-8 у Unix/Linux
Щоб у вашій
консолі
або
терміналі
можна було
переглядати
символи UTF-8, у
консолі і
терміналі
також має
бути
передбачено
підтримку
UTF-8. У версії xterm,
яка
постачається
разом з XFree86 4.0
або
наступними
версіями,
передбачено
підтримку
UTF-8. Щоб
задіяти цю
підтримку,
запустіть
xterm(1) у локалі
UTF-8 і
скористайтеся
шрифтом з
кодуванням
iso10646-1,
наприклад
за
допомогою
такої
команди:
LC_CTYPE=en_GB.UTF-8 xterm -u8 -fn '-Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1'
У сучасних
дистрибутивах
GNU/Linux типовою
використовується
кодування
UTF-8. Можна
працювати
і з іншими
багатобайтовими
кодуваннями
символів,
але
належного
тестування
працездатності
з цими
кодуванням
не
виконувалося.
У wcd
припускається,
що
кодуванням
файлів
даних
ієрархії
каталогів
є
кодування
символів
поточної
локалі. До
файлів
даних
ієрархії
каталогів
символ
позначки
порядку
байтів (BOM) не
записується.
UTF-16 у Windows
У Windows
підтримку
Unicode
передбачено
у всіх
версіях PowerShell
та у
командній
оболонці Windows
у Windows 7 (та
новіших
версіях). Unicode
також
працює у Take Command
або TCC/LE
створених JP
Software, якими
можна
скористатися
у старіших
версіях Windows (XP/Vista).
У Windows усі
назви
каталогів
на диску
кодуються
за
допомогою
UTF-16. У
програмах
Windows без
підтримки
Unicode символи Unicode
перетворюються
у символи
типової
кодової
сторінки ANSI.
Для
символів,
які не є
частиною
регіонального
кодування,
це
перетворення
є
неможливим,
отже
програми
без
підтримки
Unicode
виводитимуть
замість
них символ
знаку
питання
або
помилковий
символ.
Wcd з
підтримкою
Unicode читатиме
закодовані
у UTF-16 назви
каталогів
і
перетворюватиме
дані до UTF-8 у
внутрішньому
коді. Усі
дані
файлів
ієрархії
каталогів
буде
закодовано
у UTF-8. Ці дані є
несумісними
з версіями wcd
без
підтримки
Unicode. Wcd створить
скрипт
переходу у
кодуванні
UTF-8.
Усі версії
Windows PowerShell можуть
запускати
скрипти у
кодуванні
UTF-8, якщо у
скрипті є
символ BOM UTF-8.
Починаючи
з Windows 7, у
командній
оболонці Windows
передбачено
можливість
змінити за
допомогою
пакетного
скрипту
каталог на
каталог з
літерами Unicode
у назві.
Кодуванням
назви
каталогу
має бути UTF-8, а
пакетний
скрипт не
повинен
містити
позначки
порядку
байтів (BOM).
Слід
змінити
активну
кодову
сторінку
командної
оболонки
на 65001 (UTF-8) до
виконання
команди cd. Wcd
для
командної
оболонки
створити
такий
скрипт
переходу
("wcdgo.bat"). Цей
скрипти
спочатку
змінюватиме
кодову
сторінку
на 65001, потім
змінюватиме
каталог, і
нарешті,
повертатиме
початкове
значення
параметрів
кодової
сторінки.
Якщо
літери
буде
показано
не так, як
слід, вам
слід
встановити
шрифт True Type Lucida Console
(не
растровий
шрифт).
Версія wcd для
Windows без
підтримки
Unicode може
читати
файли
даних
ієрархії
каталогів
у
кодуванні
Unicode,
починаючи
з версії 5.2.0,
якщо у
файлі є
позначка
порядку
байтів (BOM)
(див.
<
http://en.wikipedia.org/wiki/Byte_order_mark>),
але не може
змінювати
каталоги
на
каталоги з
тими
літерами Unicode
у назві, які
не є
частиною
типової
кодової
сторінки ANSI
системи.
Версія wcd для
Windows з
підтримкою
Unicode записує BOM
до файлів
ієрархії
каталогів
у
кодуванні
UTF-8,
починаючи
з версії 5.2.0,
отже, ці
файли
можна
читати за
допомогою
notepad.
UTF-8 у Cygwin
У Cygwin
передбачено
підтримку
Unicode,
починаючи
з версії 1.7.
Шар
обробки Cygwin
виконує
перетворення
назв
каталогів
Windows у UTF-16 до UTF-8.
Отже,
програми,
зокрема wcd, не
потрібно
перейматися
процедурами
перетворення,
вони
можуть
обробляти
дані у
кодуванні
UTF-8, як це
робиться у
Unix/Linux.
Встановити
кодування
символів UTF-8
можна за
допомогою
змінної
середовища
LANG або
LC_CTYPE.
Ймовірно,
вам
доведеться
пересканувати
ваші диски.
Якщо ви
користуєтеся
типовою
консоллю Cygwin,
вам слід
встановити
для неї
шрифт True Type Lucida Console
(не
растровий
шрифт).
Версія wcd для
Cygwin
поводиться
точно так
само, як
версія wcd для
Unix. Мітка
порядку
байтів (BOM) не
записується
до файлів
даних
ієрархії
каталогів.
Кодуванням
файлів
вважається
кодування
символів
локалі
Cygwin.
ФАЙЛИ¶
Якщо
встановлено
змінну
середовища
WCDHOME,
використовуватиме
WCDHOME замість
HOME. Усі файли
"*.wcd" є
текстовими
файлами. Їх
можна
редагувати
у
звичайному
текстовому
редакторі.
Версія wcd для
командної
оболонки Windows
поводиться
так само, як
версія для DOS.
Версія wcd для
Cygwin
поводиться
як версія
для Unix.
- wcd.exe
- Сама
програма. У
оболонках
Unix програма
завжди
викликається
функцією
або
альтернативною
командою,
оскільки
поточний
робочий
каталог у
оболонці Unix
можна
змінювати
лише за
допомогою
вбудованої
команди cd.
Див. також
розділ
«ВСТАНОВЛЕННЯ».
- типовий
файл даних
ієрархії
каталогів
- Це типовий
файл даних
ієрархії
каталогів,
де wcd шукає
відповідники.
Якщо цей
файл
непридатний
до читання,
wcd створить
новий.
DOS: \treedata.wcd або %HOME%\treedata.wcd
Unix: $HOME/.treedata.wcd
- додатковий
файл даних
ієрархії
каталогів
- Необов’язковий
додатковий
файл даних
ієрархії
каталогів.
Якщо такий
файл існує
і є
придатним
до читання,
wcd спробує
знайти
відповідники
і у цьому
файлі.
DOS: \extra.wcd або %HOME%\extra.wcd
Unix: $HOME/.extra.wcd
- файл
блокувань
- До цього
додаткового
файла wcd
записує
заблоковані
шляхи. Див.
параметр
-b.
Передбачено
підтримку
символів-замінників.
DOS: \ban.wcd або %HOME%\ban.wcd
Unix: $HOME/.ban.wcd
- файл
альтернативних
назв
- Необов’язковий
файл із
записами
альтернативних
назв wcd. Див.
параметр
-l.
DOS: \alias.wcd або %HOME%\alias.wcd
Unix: $HOME/.alias.wcd
- файл stack
- У цьому
файлі
зберігається
стос
каталогів
wcd. Літеру
диска
можна
змінити за
допомогою
параметра
-d.
DOS: c:\stack.wcd або %HOME%\stack.wcd
Unix: $HOME/.stack.wcd
Назву
файла
стосу
можна
змінити за
допомогою
змінної
середовища
WCDSTACKFILE. Див.
розділ
«ЗМІННІ
СЕРЕДОВИЩА».
- скрипт go
- Це скрипт
командної
оболонки,
який wcd.exe
створює
під час
кожного
запуску.
Від
використовується
функцією
або
альтернативною
командою.
Літеру
диска
можна
змінити за
допомогою
параметра
-d. З
історичних
міркувань
у системах
Unix цей файл
типово
зберігається
у "$HOME/bin".
Каталог
цього
файла
можна
змінити за
допомогою
параметра
-G.
bash для DOS: c:/wcd.go або $HOME/wcd.go
командна оболонка Windows: c:\wcdgo.bat або %HOME%\wcdgo.bat
Windows PowerShell: $env:HOME\wcdgo.ps1
WinZsh: $HOME/wcd.go
Cygwin/MSYS: $HOME/bin/wcd.go
командна оболонка OS/2: c:\wcdgo.cmd або %HOME%\wcdgo.cmd
Unix: $HOME/bin/wcd.go
- файл
відносних
шляхів у
ієрархії
каталогів
- Текстовий
файл з
відносними
шляхами
щодо
каталогу
КАТАЛОГ.
Див.
параметри
+S, -n та +n.
DOS: <шлях>\rtdata.wcd
Unix: <шлях>/.rtdata.wcd
ЗМІННІ СЕРЕДОВИЩА¶
- HOME
- Типово, wcd
використовує
змінну
середовища
HOME для
визначення
місця, де
зберігатимуться
файли
програми.
Див. також
розділ
«ФАЙЛИ».
Перевизначити
каталог
можна за
допомогою
змінної
середовища
WCDHOME.
HOME також
визначає
місце,
звідки
слід
розпочинати
сканування
диска, якщо
використано
параметр
-s.
Перевизначити
це місце
можна за
допомогою
змінної
середовища
WCDSCAN.
У версіях
для Unix, Cygwin, Windows PowerShell, WinZsh
та MSYS слід
встановити
значення
HOME або WCDHOME.
Для інших
версій wcd
використання
цих
змінних є
необов’язковим.
Якщо
змінну HOME
встановлено
у DOS/Windows, wcd
розташує
свої файли
(treedata.wcd, extra.wcd, alias.wcd, ban.wcd, wcd.go) у
каталозі
HOME. Після
встановлення
змінної
поведінка
wcd стає
еквівалентною
до версії wcd
для Unix.
Типово, wcd
скануватиме
диск,
починаючи
з HOME.
Сканування
дисків не
виконуватиметься
у
автоматичному
режимі
після
зміни
диска. Про
потребу у
скануванні
слід
повідомити
явно.
Приклад:
wcd -S c: -A d: -A e:
Після
цього
встановлення
відповідності
каталогів
буде
загальним
на усіх
сканованих
дисках.
- WCDHOME
- Для зміни
місця
зберігання
файлів wcd
слід
використовувати
змінну
середовища
WCDHOME. Якщо
встановлено
одразу HOME і
WCDHOME, замість
HOME буде
використано
WCDHOME.
З версіях wcd
до версії 5.1.5
типовий
каталог
сканування
можна
змінити
також за
допомогою
змінної WCDHOME.
У
наступних
версіях
таку
поведінку
було
змінено.
Починаючи
з версії 5.1.5,
WCDHOME не
змінює
типового
каталогу
сканування.
Див.
параметр
-s.
Починаючи
з версії 5.1.5,
для
перевизначення
типового
каталогу
сканування
слід
використовувати
змінну
середовища
WCDSCAN.
Приклад
для
командних
оболонок DOS,
Windows, OS/2:
set WCDHOME=C:\Users\erwin\wcd
Приклад
для
командних
оболонок
типу POSIX:
export WCDHOME="$HOME/.wcd"
Приклад
для
командних
оболонок
типу Csh:
setenv WCDHOME "$HOME/.wcd"
- WCDSCAN
- Для
перевизначення
встановленого
за
допомогою
змінної
середовища
HOME
типового
каталогу
сканування
скористайтеся
змінною
середовища
WCDSCAN. Щоб
визначити
декілька
каталогів,
скористайтеся
списком
каталогів,
відокремлених
двокрапкою
(Unix). У DOS або Windows
записи у
списку
слід
відокремлювати
крапкою з
комою.
Приклади
для
командних
оболонок DOS,
Windows, OS/2:
set WCDSCAN=C:\Users\erwin;D:\data
set WCDSCAN=%HOMEDRIVE%%HOMEPATH%;\\projectdrive\projectX
Приклад
для
командних
оболонок
типу POSIX:
export WCDSCAN="$HOME:/projectdisk/projectX"
Приклад
для
командних
оболонок
типу Csh:
setenv WCDSCAN "$HOME:/projectdisk/projectX"
- WCDFILTER
- Фільтри
можна
вказати за
допомогою
змінної
середовища
WCDFILTER. Усі
каталоги,
які не
відповідають
цим
фільтрам,
буде
проігноровано.
Записи у
списку
слід
відокремлювати
типовим
роздільником
каталогів
у шляхах
командної
оболонки.
Це щось
подібне до
визначення
змінної
середовища
PATH. Те, чи
буде
враховано
регістр
символів,
визначається
параметрами
операційної
системи.
Приклад
для
командних
оболонок DOS,
Windows, OS/2:
set WCDFILTER=projects;doc
Приклад
для
командних
оболонок
типу POSIX:
export WCDFILTER="projects:doc"
Приклад
для
командних
оболонок
типу Csh:
setenv WCDFILTER "projects:doc"
- WCDBAN
- Шляхи,
вказані за
допомогою
змінної
середовища
WCDBAN,
вважатимуться
заблокованими
для wcd. Див.
також
параметр
-b. Записи у
списку
шляхів
слід
відокремлювати
типовим
роздільником
змінної PATH
командної
оболонки.
- WCDEXCLUDE
- Шляхи,
вказані за
допомогою
змінної
середовища
WCDEXCLUDE,
вважатимуться
виключеними
для wcd. Див.
також
параметри
-x та -xf.
Записи у
списку
шляхів
слід
відокремлювати
типовим
роздільником
змінної PATH
командної
оболонки.
Приклад
для
командних
оболонок DOS,
Windows, OS/2:
set WCDEXCLUDE=*/windows;*/temp;*CVS
Приклад
для
командних
оболонок
типу POSIX:
export WCDEXCLUDE="/dev:/tmp:*CVS"
Приклад
для
командних
оболонок
типу Csh:
setenv WCDEXCLUDE "/dev:/tmp:*CVS"
- WCDUSERSHOME
- Встановлює
основний
каталог
для
домашніх
каталогів
користувачів.
У DOS або Windows
типовим
значенням
змінної є
"\\users". У Unix або Cygwin
типовим
значенням
є "/home". Ця
змінна
середовища
використовується
для
сканування
файлів
даних
ієрархії
каталогів
інших
користувачів.
Див. також
параметри
-u та +u. У
докладному
режимі wcd
виводитиме
усі
фільтри,
блокування
та
виключення.
Див.
параметр
-v.
- WCDSTACKFILE
- Wcd надає
перевагу
значенню
змінної
WCDSTACKFILE над
типовою
назвою
файла
стосу (див.
розділ
«ФАЙЛИ»).
За
допомогою
цієї
змінної
можна
визначити
окремий
стос
використаних
каталогів
для
декількох
різних
командних
оболонок
(або
використаних
емуляторів
термінала).
Використання
файла з
унікальною
назвою на
основі
поточного
часу у
форматі
РРРММДД-ГГХХСС
для кожної
відкритої
інтерактивної
командної
оболонки:
export WCDSTACKFILE=$HOME/.wcd/stack.$(date +%Y%m%d-%H%M%S)
Для
окремого
стосу на
кожний
екземпляр
xterm(1)
скористайтеся
змінної
середовища
WINDOWID для xterm:
export WCDSTACKFILE=$HOME/.wcd/stack.$WINDOWID
Для GNU screen(1),
використання
окремого
стосу на
екземпляр
screen:
export WCDSTACKFILE=$HOME/.wcd/stack.$WINDOW
- TERMINFO
- Якщо
визначено
змінну
середовища
TERMINFO, wcd з
інтерфейсом
на основі ncurses
шукатиме
локальні
визначення
термінала
до
виконання
пошуку у
стандартному
місці. Це
корисно,
якщо
визначення
термінала
зберігаються
у
нестандартному
місці.
Часто
використовуються
стандартні
місця "/usr/lib/terminfo"
та "/usr/share/terminfo".
- PDC_RESTORE_SCREEN
- Wcd з
інтерфейсом
на основі PDCurses
розпізнає
змінну
середовища
PDC_RESTORE_SCREEN. Якщо
встановлено
цю змінну
середовища,
PDCurses скопіює
вміст
екрана на
час
запуску wcd;
після
завершення
роботи wcd
вміст
екрана
буде
відновлено.
Приклад
для
командної
оболонки Windows:
set PDC_RESTORE_SCREEN=1
У Windows
передбачено
можливість
зберігання
лише
буфера
незначного
обсягу.
Тому повне
відновлення
не завжди
можливе.
Якщо вміст
буфера є
доволі
значним, до
консолі
після
виходу з wcd
буде
виведено
випадкові
символи.
- SHELL
- Для
виведення
8-бітових
символів у
скриптах
переходу
для
командних
оболонок
типу POSIX та C
слід
вказати
"#!$SHELL" у
першому
рядку. Якщо
цього не
зробити, у
деяких
оболонках
скрипт
переходу
вважатиметься
бінарним
файлом і не
використовуватиметься.
У bash Cygwin у
середовищі
має бути
визначено
змінну SHELL
за
допомогою
команди
"export", інакше wcd
не зможе
прочитати
змінну.
- BASH
- Wcd для bash DOS
використовується
$BASH замість $SHELL,
оскільки $SHELL
вказує на
командну
оболонку DOS.
Можливо,
слід
визначити
змінну $BASH за
допомогою
команди
"export", інакше wcd
не зможе
прочитати
змінну.
ТАКОЖ ПЕРЕГЛЯНЬТЕ¶
sh(1),
bash(1),
csh(1),
ksh(1),
zsh(1),
locale(1),
ncurses(1),
АВТОРИ¶
Wcd створено Erwin
Waterlander <waterlan@xs4all.nl>
Домашня
сторінка
проекту:
<
http://waterlan.home.xs4all.nl/>
SourceForge: <
http://sourceforge.net/projects/wcd/>
Freecode: <
http://freecode.com/projects/wcd/>
Форматування
сторінки
підручника
було
виконано Jari Aalto
<jari.aalto@cante.net>.
Початкову
версію NCD
було
створено Brad
Kingsbury для
пакунка "Norton
Utilities" Пітера
Нортона
близько 1987
року. Див.
також
<
http://www.softpanorama.org/OFM/norton_change_directory_clones.shtml>