Тотальные хитрости

Небольшие уловки, упрощающие работу в Total Commander

Сортировка после "Feed to listbox"

Мне (да, наверное, и вам тоже) частенько приходится искать дубликаты, то есть файлы, одинаковые по объему и/или содержимому и/или имени. Как правило, после обнаружения двух одинаковых файлов один из них удаляется.
Разумеется, я написал скрипт PowerPro для поиска дубликатов, но решение вопроса об удалении файлов я скрипту поручить не решаюсь.
Для демонстрации я создал две директории, названные в целях наглядности GoodDir и BadDir, и записал в них одни и те же файлы, названные соответственно GoodFiles и BadFiles (имя + счетчик). То есть, предположим, что в диалоге поиска, вкладка "Advanced", рамка "Find duplicate files", мы бы поставили вторую и третью птицы (я чаще всего ищу именно такие дубликаты). Дадим команду на поиск дубликатов (через скрипт или напрямую - безразлично) и получим вот что:




Итак, найдено 16 файлов, то есть 8 пар, отделенных друг от друга пунктирной линией и состоящих каждая из двух одинаковых по объему и содержанию файлов. Наша задача - удалить все файлы, имя которых начинается на BadFiles и перечисленные в окне поиска.
Так или иначе, это окно не позволяет удалять файлы, поэтому нажмем "Feed to listbox":



Есть очень длинный путь: выделять файлы по одному вручную. Когда их восемь, это нормально. А когда 800?
Менее длинный путь: выделить все файлы, вновь вызвать поиск (должна быть поставлена птица "Only search in selected directories/files"), затем ввести маску (в нашем случае "путь\BadDir\*.*"), но в результат поиска попадут и файлы из архивов (а у нас их два). Да и потом, путь утомительно набирать вручную; ошибешься - сотрешь совсем не то. Последнее - а вдруг мы хотим удалить из BadDir все файлы, кроме одного?
Есть путь, простой до отвращения. Нажимаем заголовок колонки "Ext", то есть отсортируем по расширению (с тем же успехом можно отсортировать по чему угодно):




А теперь вновь сортируем по имени:




Осталось установить курсор на последний из ненужных файлов BadFiles08.gif и нажать Shift+Home, а потом вожделенную Del. Все.
Строго говоря, таким образом можно сортировать любые результаты поиска. Просто мне не приходилось применять этот прием, где-то кроме поиска дубликатов.

Вахмурка

Быстрый выбор команды из списка

Выбирать определённый пункт из списка всех внутренних команд Total Commander приходится часто, особенно при создании новой кнопки. Как вы это делаете? Листаете список? Но команд около 350, и пока долистаешь до нужной...
Набирать вручную тоже утомительно, да и нужно точно знать имя команды, ошибка в одной букве сведет все на нет.
Можно так: открываем Totalcmd.inc, ищем по контексту, вставляем в буфер, потом идем к окну выбора команды, вставляем из буфера...
Я поступаю по-другому, и это самый быстрый и удобный способ. Важно лишь соблюдать последовательность действий.

1.Нажимаем крысой на кнопку раскрытия списка:



2.Отныне мы забываем про крысу и действуем только клавиатурой. Для начала набираем первые символы всех команд "cm_":



1.Теперь мы - хозяева списка. Даже если мы не очень точно представляем себе, как именно пишется название команды, мы можем набирать ее имя, стирать и набирать заново... Более того - обладая минимальными познаниями в "языке вероятного противника", мы можем пытаться предположить, угадать это имя! Для пробы нажмите две-три буквы наугад - результат вас порадует. Прокручивая список, Total Commander будет услужливо предлагать нам то, что подходит под набранное в строке. Главное - пользоваться только клавишами, никакой крысы! Клавиши "вертикального движения" (Up, Down, PageUp, PageDn) перемещают курсор по списку, однако пользоваться ими не рекомендуется - поверьте, проще и удобнее использовать только буквы, цифры, клавиши "горизонтального движения" (Left, Right), Del и BackSpace - этого более чем достаточно. Лишь увидев в списке нужную команду, можно выбрать ее любым способом. А если использовать файл Totalcmd.inc из русской локализации, то найти нужную команду станет совсем просто - описания команд там переведены.

Эти рекомендации только на первый взгляд могут показаться сложными. Стоит сделать это один раз, и потом вы и помыслить не сможете, что команду можно выбирать как-то иначе.
Примечание составителя: приведённый совет полезен только для
TC младше 7.0, т.к. в этой версии появился собственный, очень удобный инструментарий для работы с командами.

Вахмурка

Пример удачного использования Total Commander

Иногда то, насколько хорош тот или иной файловый менеджер, можно определить только тем временем, которое он вам сэкономил. При обыденных файловых операциях - копирование, перемещение, удаление файловый менеджер Total Commander очень хорош. Но как это доказать, скажем, любителю поработать в Проводнике Windows?
Вчера мне пришлось задуматься о своей коллекции шрифтов в 300 мегабайт. Все они взялись уже не помню откуда, и складировались в директорию под названием My fonts. Поскольку часто шрифты я копировал просто с компакт-дисков, то зачастую и структура каталогов оставалась с компакт дисков - около трех сотен вложенных директорий, а разбираться в том месиве всех шрифтов было довольно неудобно.
Я решил - необходимо все скопировать в один каталог, а затем создать несколько каталогов c названиями A, B, C,... X, Y, Z и отсортировать все шрифты по первой букве названия файла. Это упрощало поиск необходимого шрифта и навигацию.
Что бы в этом случае делал бы чайник в своем Эксплорере? Целый день бы таскал шрифты из одной папки в другую!
А теперь то, что я сделал в Total Commander:
Вхожу в каталог d:\my fonts\ и нажимаю очень интересное клавиатурное сочетание - Ctrl+B. Результатом явилось то, что все файлы из my fonts и вложенных директорий расположились на одном уровне. Как это упрощает задачу! Навожу курсор на файл file_id.diz и нажимаю Alt+"серый плюс" (это на цифровом блоке клавиатуры) - и все файлы, которые имеют расширение .diz, выделились. Теперь наводим курсор на файл с расширением .gif и опять нажимаем Alt+"серый плюс" - к выделению добавляются все файлы с расширением .gif. Аналогичную операцию проделываем и с файлами, имеющие расширение .txt, .htm и прочим мусором, который не является шрифтами.
Добавлено: на самом деле это всё можно было сделать ещё быстрее. Для этого нужно было нажать Alt+"серый плюс" на файле шрифта ("выделить все файлы с таким расширением"), а потом нажать "серое умножение" ("инвертировать выделение"). В результате были бы выделены все файлы, не являющиеся шрифтами, что и требовалось.

Теперь нажмем Ctrl+L - появляется информационное окно, которое сообщает нам количество файлов, их общий размер и общий размер с учетом остатков кластеров, а это оказалось около 45 мегабайт дискового пространства! Смело жмем Del (а еще лучше Shift+Del, если у вас стоит удаление в Корзину - это позволит удалить файлы минуя корзину).
После того, как удаление завершено, в противоположной панели создаем временную директорию d:\_temp и клавишей F6 переносим все файлы. Если поступает предупреждение, что такой файл уже существует, то, скорее всего, можно смело заменять такие файлы, поскольку это наверняка одинаковые шрифты. В результате я освободил еще 35 мегабайт дискового пространства.
Казалось бы, директория my fonts пуста. Но нажмем Ctrl+R (обновить окно) и вид файловой панели вновь вернулся к отображению многоуровневой структуры. Только теперь все эти папки пустые, поэтому их можно смело удалить.
Теперь у нас в левой панели каталог d:\_temp со всеми шрифтами, а в правой панели пустой d:\my fonts.
Остается лишь техническая сторона дела: создание каталогов и перенос файлов. При этом я использовал маску выделения файлов a*.ttf, b*.ttf и т.д.
Если вы хотите поделиться своим опытом удачного использования Total Commander, присылайте свои статьи и заметки мне.

Андрей Пясецкий