Phar в PHP преимущества и работа с PHAR


Содержание

FPublisher

Web-технологии: База знаний

Документация PHP

Phar::webPhar

(No version information available, might be only in CVS)

Phar::webPhar — mapPhar for web-based phars. front controller for web applications

Описание

void Phar::webPhar ( string $alias , string $index , string $f404 , array $mimetypes , array $rewrites )

Phar::mapPhar() for web-based phars. This method parses $_SERVER[‘REQUEST_URI’] and routes a request from a web browser to an internal file within the phar archive. In essence, it simulates a web server, routing requests to the correct file, echoing the correct headers and parsing PHP files as needed. This powerful method is part of what makes it easy to convert an existing PHP application into a phar archive. Combined with Phar::mungServer() and Phar::interceptFileFuncs(), any web application can be used unmodified from a phar archive.

Phar::webPhar() should only be called from the stub of a phar archive (see here for more information on what a stub is).

Список параметров

The alias that can be used in phar:// URLs to refer to this archive, rather than its full path.

The location within the phar of the directory index, defaults to index.php.

The location of the script to run when a file is not found. This script should output the proper HTTP 404 headers.

An array mapping additional file extensions to MIME type. By default, these extensions are mapped to these mime types:

$mimes = array(
‘phps’ => 2, // pass to highlight_file()
‘c’ => ‘text/plain’,
‘cc’ => ‘text/plain’,
‘cpp’ => ‘text/plain’,
‘c++’ => ‘text/plain’,
‘dtd’ => ‘text/plain’,
‘h’ => ‘text/plain’,
‘log’ => ‘text/plain’,
‘rng’ => ‘text/plain’,
‘txt’ => ‘text/plain’,
‘xsd’ => ‘text/plain’,
‘php’ => 1, // parse as PHP
‘inc’ => 1, // parse as PHP
‘avi’ => ‘video/avi’,
‘bmp’ => ‘image/bmp’,
‘css’ => ‘text/css’,
‘gif’ => ‘image/gif’,
‘htm’ => ‘text/html’,
‘html’ => ‘text/html’,
‘htmls’ => ‘text/html’,
‘ico’ => ‘image/x-ico’,
‘jpe’ => ‘image/jpeg’,
‘jpg’ => ‘image/jpeg’,
‘jpeg’ => ‘image/jpeg’,
‘js’ => ‘application/x-javascript’,
‘midi’ => ‘audio/midi’,
‘mid’ => ‘audio/midi’,
‘mod’ => ‘audio/mod’,
‘mov’ => ‘movie/quicktime’,
‘mp3’ => ‘audio/mp3’,
‘mpg’ => ‘video/mpeg’,
‘mpeg’ => ‘video/mpeg’,
‘pdf’ => ‘application/pdf’,
‘png’ => ‘image/png’,
‘swf’ => ‘application/shockwave-flash’,
‘tif’ => ‘image/tiff’,
‘tiff’ => ‘image/tiff’,
‘wav’ => ‘audio/wav’,
‘xbm’ => ‘image/xbm’,
‘xml’ => ‘text/xml’,
);

An array mapping URI to internal file, simulating mod_rewrite of apache. For example:

would route calls to http:// /myphar.phar/myinfo to the file phar:///path/to/myphar.phar/myinfo.php, preserving GET/POST. This does not quite work like mod_rewrite in that it would not match http:// /myphar.phar/myinfo/another.

Возвращаемые значения

No return values

Errors/Exceptions

Throws PharException when unable to open the internal file to output, or if called from a non-stub. If an inval >mimetypes or to rewrites , then UnexpectedValueException is thrown.

Примеры

Пример #1 A Phar::webPhar() example

Как установить Phar на Ubuntu?

Я попал в ситуацию, когда я бегу composer install в моем проекте PHP я получаю эту ошибку:

Fatal error: Class ‘Phar’ not found in /usr/local/bin/composer on line 23

Как я читаю класс обновления композитора phar не найден , Я пытался проверить, был ли установлен Phar, выполнив php -i | grep ‘phar’ и Phar не устанавливается.

Я использую PHP 5.6.

Как я могу установить Phar на Ubuntu, пожалуйста?

[ПРАВКА] Когда я пытаюсь apt-get install php-phar , Я получил:

Тогда, если я попробую apt-get install php5.6-common :

Решение

Попробуй запустить php -i|grep phar

Если это показывает результат что-то вроде:

Все должно быть правильно установлено.

Если он не показывает результат или нет файлов phar ini, упомянутых / отключенных, то вам просто нужно включить правильный ini в ваш основной php.ini и указать путь к phar.so файлы.

или если вы нашли файл phar.so, просто добавьте его в свой основной php.ini с помощью

Обновление + дополнительные, чтобы обеспечить местоположение ext dir

Будет понятнее, если вы поймете местоположение ini-файла и ext dir, используемые вашей установкой.

Попробуйте сделать это:
php -i | grep ini

Затем в первой / второй строке будет ваш основной INI-файл.

В моей машине это показывает это:
Loaded Configuration File => /etc/php//cli/php.ini

затем выполните эту команду, чтобы убедиться, что используется папка ext или любое расширение, объявленное в главном ini:
cat /etc/php//cli/php.ini|grep ext

Вы также можете сделать:

cat /etc/php//cli/php.ini|grep phar

Для проверки параметров, связанных с phar, в главном INI-файле.

Если эти шаги ничего не показывают, я думаю, будет проще, если вы просто переустановите пакет php на своей машине.

Другие решения

Сначала вы должны установить расширение:

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

Подключаем классы разным макаром (PHP)

Что-то давненько мы здесь не занимались глупостями.

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

Вопрос: как правильно подключать в своём проекте классы, чтобы при этом сэкономить время на их подключение.

  • Старый добрый autoload() , как у всех нормальных людей.
  • Взять и собрать все классы в один файл, как многие учат.
  • Подключать нужные классы явно через require_once() .
  • И новомодная штучка: Phar-архив.
  • Phar-архив ещё можно делать не простой, а со сжатием (GZ или BZ2).
  • Ну и phar’ом также два варианта: autoload() или прямое подключение вложенных файлов.
  • И поверх этого можно акселератором каким-нибудь пошаманить.

Инструменты

Инструменты для тестов здесь: на гитхабе.

Запуск ./create.php создаёт каталог test , а в нём следующие вещи.

Каталог classes

Структура наших тестируемых классов. Всё по стандарту PSR-0.

Создаётся 5 пространств имён со случайными именами. В каждом создаётся 5 случайных классов со случайным набором методов.

И в каждом из глобальный пространств создаётся ещё 5 вложенных и в них ещё по 5 классов.

Итого 150 классов. Стандартный такой средненький фреймворк.

Файл full.php

Весь «фреймворк» одним файлом.

Файл получился размером 85 K. А общий вес каталога (за счёт большого количества маленьких файлов) 725 К (файловая система ext4).

Несколько спичек уже сэкономили.

Файл exec.php

Это исполняемый скрипт, в котором вызываются нужные классы.

Чтобы добиться какого-то подобия с обычными сценариями: в одном сценарии задействованы не все классы фреймворка, а только 50 (треть). Но к каждому классу может быть несколько обращений.

Работа с каждым классом проста: вызывается статический метод, который выполняет простейшее арифметическое действие. Таким образом время потраченное на работу с классами не должно намного превзойти время потраченное на их подключение (которое мы и тестируем).

Phar-архивы

Из каталога classes создаётся три phar-архива: phar-none.phar , phar-gz.phar , phar-bz.phar (без компрессии, gz, bz).

Размер phar-node.phar : 99 К. Больше чем full.php за счёт дополнительной информации.

Сжатые файлы: 51 К (gz) и 61 К (bz). Нормальные то архиваторы сжимают и получше.

(Нужно расширение Phar и должна быть сброшена настройка phar.readonly в php.ini)

Файлы req.php и phar-req.php

В req.php подключаются все используемые в exec.php файлы (50 штук).

В phar-req.php тоже самое, только подключаются они не из каталога, а из phar-архива.

Тесты

После создания тестового каталога запускаем из консоли тесты: ./run.php [test] .

Аргумент [test] может быть следующим:

autoload: подключение файлов из каталога с помощью автолоада.
Автолоад простой: заменяет NS1\NS2\Class на DIR/NS1/NS2/Class.php , проверяет наличие файла и подключает его.

full: подключение одного большого файла.

req: подключение нужных файлов через require_once

phar-auto: подключение из phar через автолоад.

phar-req: подключение нужных файлов из phar через require_once.

phar-gz и phar-bz: подключение через автолоад из сжатых архивов.

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

Результаты

У меня получилось такое (P. Dual Core 2,8Гц, ubuntu, php 5.5.1):

Псевдоаналитика

Автолоад vs сборка в один файл

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

Дальнейшие тесты показали, что в времени сборка приближается к автолоаду при подключении около 50% от общее числа классов, а потом начинает обходить его.

Автолоад vs requre

require ожидаемо обошло autoload.
Логично, ведь при автолоаде происходит много различных телодвижений, которые заканчиваются всё тем же require.

Однако, разница всего лишь 10%.
И это при том, что в тесте require_once для каждого класса вызывается только один раз (в реальном проекте, если перед каждым классом вначале подключать нужные ему, один и тот же класс будет запрашиваться многократно и require_once каждый раз будет проверять подключён ли уже файл или нет).
Кроме того, наши тестовые файлы маленькие. На большом файле, его подключение и разбор заняло бы гораздо больше.

Это к теме оптимизации поиска классов: можно убрать из автолоада file_exists(), можно сканировать каталоги и собирать карту классов в массив и использовать его, ещё можно много чего сделать. Но все эти оптимизации будут только в пределах этих 10%. Простое явное require по скорости никак не обойти.

Phar вполне себе бодренький.

Чуть помедленнее и чуть больше памяти хочет.
Но по потреблению памяти до варианта со сборкой в один файл ему далеко.
Хотя тут тоже один файл.

Сжатие: gzip несколько опередил bz2 и здесь (выше у него получился меньший размер файла).

Однако, при сжатии значительно понижается скорость доступа.
Да и степень сжатия, как видели выше, как-то не очень (более того, при сжатии нормальным архиватором сжатого phar’а результат получается больше, чем сжатие несжатого).

Так что использовать сжатые phar’ы я бы не рекомендовал.
Хотя, возможно, какой-нибудь опкэшер решил бы эту ситуацию.

Zend Opcache

Ну и желательно всё это протестировать со всеми опкэшерами, акселераторами и тому подобным.
Но ставить их все лениво, так что проверил только на opcache.

При запуске тестов из консоли следует не забыть включить в php.ini опцию opcache.enable_cli .

Включение opcahce привело к двукратному падению потребления памяти.

Насчёт скорости точных чисел нету, так как результаты начали сильно колебаться, а наши методы не позволяют усреднить их по большому количеству тестов.

Однако, колеблются результаты примерно в тех же пропорциях. Максимально: соответствует времени без opcahce, минимально: в два-три раза меньше.
При вызове из консоли могут иногда значительно превосходить по времени вызовы через браузер.

Выводы

1. Нечего париться из-за чепухи. Оптимизация всё равно ничтожная по сравнению с обычным временем выполнения сценария.

2. autoload() — лучшее и самое удобное решение. Тем более все стандарты типа PSR теперь завязаны на него.

3. Производить сборку нескольких файлов в один, построение карт классов и т.п. можно только на продакшене при деплое.
Когда всё более существенное уже оптимизировано.
При разработке же: геморроя много, а толку мало.

4. Сборка нескольких файлов в один даёт результат, только если каждый раз используется хотя бы половина вложенных файлов.

5. phar — хорошо (для поставляемых библиотек, которые не нужно изменять).

6. Сжатый phar — не так хорошо.

7. Opcahce вполне себе рулит.

Отказ от обязательств

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

Преимущества PHAR-архивов в PHP

PHP 5.3 имеет новую функцию с именем PHAR, похожей на JAR в JAVA. Это в основном архив файлов PHP. В чем его преимущества? Я не могу понять, как они могут быть полезны в веб-сценарии.

Любое другое использование, отличное от «простоты развертывания» — развертывание всего приложения путем простого копирования одного файла

5 ответов

18 Решение cbednarski [2010-08-25 13:32:00]

Огромные преимущества для проектов с открытым исходным кодом (в определенном порядке).

Простое развертывание означает более легкое принятие. Представьте себе: вы устанавливаете систему CMS, форум или блог на свой веб-сайт, перетаскивая ее в свой FTP-клиент. Что это.

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

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

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

Простые библиотеки. Вам не нужно определять, как использовать установщик PEAR, или выяснить, имеет ли в этой или той библиотеке вложенную структуру каталогов, или вам нужно включить X, Y или Z (в этом порядке?). Просто загрузите, включите архив, начните кодирование.

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

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

Не poo-poo упрощает развертывание. Это не будет иметь никакого значения для доморощенного SaaS, но для тех, кто отправляет или устанавливает пакеты программного обеспечения PHP, это игровой чейнджер.

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

По моему опыту, свободно упакованные исходные файлы PHP, сидящие в рабочей среде, приглашают возиться с живым кодом, когда требуется исправление. Развертывание в файле .phar обескураживает это поведение и помогает укрепить лучшие практики, то есть строить и тестировать в локальной среде, а затем развертывать на производстве.

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

Библиотеки также могут использоваться без расширения.

1 VolkerK [2010-08-19 15:05:00]

Любой инструмент, который работает в одном файле «неожиданно», работает со всеми файлами приложения одновременно.
Например. transport: вы можете загрузить все приложение через один элемент ввода/файла без дополнительных шагов.
Например. подписание приложения: контрольная сумма/подпись файла → контрольная сумма/подпись для всего приложения.
.

Самоисполняемый phar как способ распространения веб-приложений

Как уже, наверное, всем известно, в PHP 5.3 появилась поддержка специального типа архивов с расширением .phar. Те, кто не в курсе — могут почитать отличную статью .phar — исполняемые PHP-архивы
Область применения, которая сразу приходит на ум — это библиотеки/фреймворки в виде подключаемых *.phar архивов и установщики веб-приложений, например, CMS. О последних я и собираюсь рассказать подробнее и с примерами.

Постановка задачи


Требования

Возьмем для примера простейшую структуру:

Естественно, файл install.php нужен только на этапе установки, а build.php только на этапе сборки. Файл readme.txt будем создавать на этапе сборки.

Создание tar

Создаем tar архив:

Расширение файла указано .phar.tar для того, чтобы php мог с ним работать.
Добавляем файлы в архив:

Превращаем tar в phar


Делаем архив само исполняемым

Для этого нужно задать файл, который будет открываться при попытке прямого доступа к файлу веб-сервером. По-умолчанию это index.php, но у нас установка, поэтому нужно открыть install.php

Странный формат .phar.php играет очень важную роль. Расширение .php заставляет передавать файл интерпретатору PHP, а .phar дает понять, что это архив, а не файл с исходным кодом. По-сути, архив превращается в директорию, например, можно ввести в адресной строке браузера /system.phar.php/index.php — и это будет работать.

Установка

Листинг install.php, который производит установку

И герой, ради которого затевалась вся кухня — index.php

Надеюсь, кому-то эта информация будет полезна, и всё больше продуктов будет поставляться не в виде zip/rar/tar/gz/bz2 архивов, а нативного phar, для чего он и был создан.

FarRus Помощь Far на русском

Как пользоваться помощью

Что такое FAR

Как зарегистрировать FAR

Параметры командной строки Клавиатурные команды

Поддержка подключаемых модулей Обзор возможностей подключаемых модулей

Как пользоваться помощью

В оглавлении справочной системы имеются ссылки (они функционируют примерно так же, как и гиперссылки, знакомые каждому пользователю Интернет), которые указывают на разделы с более подробной информацией. Для перемещения между ссылками вы можете использовать Tab и Shift-Tab. Нажатие Enter вызовет страницу, соответствующую выбранной ссылке. Этот же результат можно получить нажав кнопку «мыши» на требуемой ссылке.

Если текст помещается в окне помощи не полностью, то появляется полоса прокрутки. В этом случае текст можно перемещать вверх и вниз с помощью клавиш управления курсором.

Нажатие Alt-F1 или BS приводит к переходу на предыдущую страницу.

Shift-F1 вызывает содержание помощи.

Нажмите Shift-F2, чтобы получить помощь по внешним модулям.

Для переключения между полноэкранным режимом отображения помощи и выводом текста в окне можно использовать F5.

Команды управления панелями

Общие команды

Команды файловой панели

Записать клавиатурную макрокоманду Ctrl-

История в строках редактирования диалогов Ctrl-Up, Ctrl-Down

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

Очистка истории в строках редактирования диалогов Del

Очистка текущего неотмеченного пункта истории в строках редактирования диалогов Shift-Del

Вставить в диалог имя файла под курсором Shift-Enter

Поместить курсор в диалогах на элемент по умолчанию PgDn

Вставить в диалог имя файла пассивной панели Ctrl-Shift-Enter

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

Ctrl-Enter в диалогах вызывает действие по умолчанию (нажатие на кнопку по умолчанию или подобное по смыслу действие).

В диалогах, когда текущим элементом управления является контрольный переключатель (кнопка с независимой фиксацией или Check Box):

— включить ([x]) Gray +

— выключить ([ ]) Gray — — изменить состояние на неопределенное ([?]) Gray * (если переключатель имеет трехпозиционное состояние)

Щелчок левой клавишей мыши за пределами диалога аналогичен нажатию клавиши Esc.

Щелчок правой клавишей мыши за пределами диалога аналогичен нажатию клавиши Enter.

Щелчок средней клавишей мыши с соответствующими модификаторами (Ctrl, Alt, Shift) в панелях аналогичен нажатию клавиши Enter. Для непустой командной строки будет исполнено ее содержимое. Это поведение регулируется в настройках.

В Windows 2000/XP FAR Manager умеет обрабатывать колесо мыши.

Поддержка колеса мыши

В Windows 2000/XP FAR Manager умеет обрабатывать колесо мыши:

Встроенная программа просмотра, система помощи

Вы можете задать количество строк для прокрутки в панелях, редакторе и во встроенной программе просмотра (см. TechInfo#33).

Параметры командной строки

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

Может быть полезно при запуске FAR из telnet.

При старте FAR пытается определить тип шрифта консольного

консоли FAR. В некоторых конфигурациях эта опция

Искать «основные» плагины в папке, указанной в

Просмотр указанного файла. Если в качестве

Загрузка при этом происходит быстрее, но новые или измененные

предназначена для разработчиков внешних модулей и в

В командной строке можно указать не более двух путей к каталогам, файлам или архивам. Первый путь для активной панели, второй — для пассивной:

— для каталогов и архивов FAR покажет их содержимое;

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

Поддержка подключаемых модулей

Внешние подключаемые DLL модули (plugins) могут быть использованы для создания новых команд FAR и поддержки дополнительных файловых систем. Например, работа с архивами, FTP -клиент, временная панель и просмотр сети реализованы с помощью эмулирующих файловые системы модулей.

Илон Маск рекомендует:  Создание сайтов


Все подключаемые модули хранятся в отдельных папках, размещенных в папке ‘Plugins’, которая находится в одной папке с FAR.EXE. При обнаружении нового модуля FAR сохраняет информацию о нем и впоследствии загружает его только при необходимости, так что неиспользуемые модули не требуют дополнительной памяти. Тем не менее, если вы уверены, что какие-либо модули вам не нужны, вы можете удалить их, чтобы сохранить место на диске.

Модули могут быть вызваны либо из Меню выбора диска, либо из меню Команды внешних модулей, активизируемого с помощью F11 или соответствующего пункта Меню команд. F4 в меню «Команды внешних модулей» позволяет назначить горячие клавиши для пунктов этого меню, что упрощает их последующий вызов с помощью

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

Вы можете настроить параметры модулей, используя команду Параметры внешних модулей из Меню параметров.

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

Модули имеют собственные файлы сообщений и помощи. Вы можете получить список доступной помощи по модулям, нажав:

Shift-F2 — в основной помощи FAR Shift-F1 — в списке плагинов (контекстно-зависимая помощь).

Если плагин не имеет файла-помощи, то контекстно-зависимая подсказка вызываться не будет.

Если активная панель отображает файловую систему, поддерживаемую внешним модулем, то команда «CD» в командной строке может быть использована для смены текущей папки этой файловой системы. В отличие от «CD» команда

«CHDIR» всегда воспринимает указанный параметр как имя реальной папки, вне зависимости от типа файловой панели.

Параметры внешних модулей

Вы можете настроить параметры подключаемых модулей, используя команду «Параметры внешних модулей» из «Меню параметров».

Вы можете получить информацию о конкретном модуле, нажав Shift-F1 — контекстно-зависимая помощь по настройке модуля. Если плагин не имеет файла помощи, то контекстно-зависимая подсказка вызываться не будет.

При вызове контекстной подсказки FAR попытается показать тему с именем

Config. Если такой темы в файле помощи плагина нет, будет показана основная тема помощи по данному плагину.

Клавиша F4 в списке «Параметры внешних модулей» позволяет назначить горячие клавиши для пунктов этого меню, что упрощает их последующий вызов с помощью клавиатурных макрокоманд.

Обзор возможностей подключаемых модулей

Оболочка FAR Manager настолько тесно слилась со своими плагинами, что говорить о ней и не говорить о плагинах просто бессмысленно. Плагины неимоверно расширяют возможности FAR Manager, дополняя их и модифицируя.

Не вдаваясь в подробности и персоналии, можно отметить только некоторые из этих возможностей:

типы прокси, автоматической докачкой и прочее)

применением регулярных выражений.

сложных составных масок из символов подстановки и шаблонов

ORACLE через OCI.

редактировании текстов в редакторе FAR

В качестве источников информации, которые можно использовать для поиска конкретных плагинов, можно порекомендовать:

— сайт Группы разработчиков FAR (FAR Group) http://www.farmanager.com

— сайт PlugRinG http://plugring.farmanager.com — конференции USENET news:fido7.far.support news:fido7.far.development — конференции FidoNet far.support far.development — листы рассылки http://groups.yahoo.com/group/plugring http://groups.yahoo.com/group/farpluginsapi

— использовать плагин PlugRinG viewer и все самые последние плагины вы сможете посмотреть и скачать к себе на диск прямо из FAR.

Панели

Обычно FAR показывает две панели (левое и правое окна) с различной информацией. Если вы хотите изменить тип отображаемой в панели информации, используйте меню панелей или соответствующие клавиатурные команды.

Для получения дополнительной информации о панелях прочитайте перечисленные ниже темы:

Панель файлов

Панель файлов отображает содержимое текущей папки. Вы можете выбирать файлы и папки, выполнять различные файловые и архивные операции. Команды управления панелями описаны в теме Список команд.

По умолчанию в панели файлов используются следующие режимы просмотра:

Краткий Имена файлов выводятся в три колонки.

Средний Имена файлов выводятся в две колонки.

Полный Выводятся имя, размер, дата и время файла.

Широкий Выводятся имя и размер файла.

Детальный Выводятся имена, размеры, упакованные размеры,

Описания Имена и описания файлов

Длинные Имена, размеры и описания файлов. описания Полноэкранный режим.

Владельцы Имена, размеры и владельцы файлов. файлов

Связи файлов Имена, размеры и количество жестких связей файлов.

Альтернативный Имя, размер (форматированный с помощью запятых) полный и дата файла.

Вы можете сами настроить режимы просмотра панели файлов.

Упакованные размеры имеют смысл для файлов с атрибутом «Сжатый»

на дисках с файловой системой NTFS или для файлов внутри архивов. Владельцы и количество связей файлов тоже применимы только к разделам NTFS. Некоторые файловые системы могут не поддерживать время создания и время доступа к файлу.

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

Для позиционирования на файл можно воспользоваться операцией быстрого поиска по первым буквам имени.

Дерево папок

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

FAR запоминает информацию о структуре папок в файле Tree.Far, расположенном в корневой папке каждого диска. Если запись на диск невозможна, то эта информация сохранятся в скрытой папке Tree.Cache, находящейся в той же папке, что и FAR.EXE.

Для позиционирования на папку можно использовать операцию быстрого поиска. Для этого, удерживая клавишу Alt, набирайте имя требуемой папки, пока на нее не переместится курсор. С помощью Ctrl-Enter можно переместиться на следующее имя, соответствующее введенной строке.

Панель информации

Панель информации содержит следующие данные:

— сетевые имена компьютера и пользователя;

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

— уровень загрузки памяти (100% означает, что использована вся память) общий и свободный размеры физической и виртуальной памяти;

— файл описания папки

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

Список возможных имен файлов описания папок может быть задан с помощью команды «Файлы описания папок» в Меню параметров.

Панель быстрого просмотра

Панель быстрого просмотра используется для получения информации о выбранном элементе панели файлов или дерева папок.

Если выбранный элемент — файл, то отображается его содержимое. Для известных Windows типов файлов также выводится название типа.

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

В Windows 2000/XP для символических связей так же отображается путь к исходным папкам.

Перетаскивание файлов

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

Если вы хотите обработать группу файлов или папок, пометьте их перед перетаскиванием, нажмите левую кнопку мыши на исходной панели и перетащите файлы на другую панель.

Вы можете переключаться между копированием и переносом, нажимая правую кнопку мыши во время перетаскивания. Также, для переноса файлов вы можете удерживать клавишу Shift в момент нажатия левой кнопки мыши.

Для активизации меню вы можете использовать F9 или нажать кнопку мыши на верхней строке экрана.

При активизации по клавише F9 автоматически выбирается меню, соответствующее активной панели. При активном меню клавиша Tab позволяет переключаться между меню левой и правой панелей. Если выбрано меню «Файлы»,

«Команды» или «Параметры», клавиша Tab переключает на меню пассивной панели.

Комбинация Shift-F10 позволяет выбрать последний использованный пункт меню.

Описания конкретных меню можно прочесть в следующих темах:

Меню левой и правой панелей

Меню Левая и Правая позволяют изменить параметры левой и правой панели соответственно. Эти меню включают следующие пункты:

Краткий Показывать файлы в три колонки.

Средний Показывать файлы в две колонки.

Полный Показывать имя, размер, дату и время файла.

Широкий Показывать имя и размер файла.

Детальный Показывать имя, размер, упакованный размер,

Описания Имя и описание файла.

Длинные описания Имя, размер и описание файла.

Владельцы файлов Имя, размер и владелец файла.

Связи файлов Имя, размер и количество жестких связей

Альтернативный Имя, размер (форматированный с использованием полный запятых) и дата файла.

Панель информации Сменить панель на панель информации.

Дерево папок Сменить панель на дерево папок.

Быстрый просмотр Сменить панель на панель быстрого просмотра.

Режимы сортировки Показать доступные режимы сортировки.

Показывать длинные Показывать длинные/короткие имена. имена

Панель Вкл/Выкл Показать/спрятать панель.

Перечитать Перечитать содержимое панели.

Сменить диск Сменить текущий диск.

Просмотр Просмотр файлов, подсчет размеров папок.

Редактирование Редактирование файлов.

Копирование Копирование файлов и папок.

Перенос Переименование или перенос файлов и папок.

Создание папки Создание новой папки.

Удаление Удаление файлов и папок.

Архивировать Добавить выбранные файлы к архиву.

Распаковать Распаковать выбранные файлы из архива.

Атрибуты файлов Изменить атрибуты и время файла.

Применить команду Применить команду к выбранным файлам.

Описание файлов Добавить описания к выбранным файлам.

Пометить группу Пометить заданную маской группу файлов.

Снять пометку Снять пометку с соответствующей заданной

Инверсия пометки Инвертировать текущую пометку файлов.

Восстановить пометку Восстановить предыдущую пометку после

Некоторые команды из этого меню также описаны в теме

Управление файлами и сервисные команды.

Поиск файла Поиск в дереве папок файлов, удовлетворяющих

История команд Показать предыдущие команды. Эта команда

Видеорежим Выбрать количество строк на экране.

Поиск папки Поиск папки в дереве папок.

История просмотра Показать историю просмотра и редактирования

История папок Показать историю смены папок.

Поменять панели Поменять левую и правую панели местами.

Панели Вкл/Выкл Показать/спрятать обе панели.

Сравнение папок Сравнить содержимое папок.

Меню пользователя Позволяет редактировать главное или местное

Ассоциации файлов Показывает список ассоциаций файлов.

Ссылки на папки Показывает текущие ссылки на папки.

Группы сортировки Позволяет редактировать задаваемые

Фильтр панели Позволяет управлять содержимым панели файлов. файлов Дополнительная информация об этой команде

Команды Показывает список доступных внешних модулей подключаемых модулей.

Список экранов Показывает список открытых экранов.

Список задач Показывает список активных задач.

Меню параметров

Системные параметры Вызывает диалог системных параметров.

Настройки панели Вызывает диалог настроек панели.

Настройки интерфейса Вызывает диалог настроек интерфейса.

Языки Выбор основного языка и языка помощи.

Параметры Настройка параметров подключаемых внешних модулей внешних модулей.

Подтверждения Включение или выключение подтверждений

Режимы панели Настройка режимов просмотра панели файлов. файлов

Описания файлов Режимы обновления и имена описаний файлов.

Файлы описания Имена или маски файлов, отображаемых папок в панели информации в качестве описания

Настройки программы Настройки внешней программы просмотра. просмотра

Настройки редактора Настройки внешнего и встроенного редактора.

Цвета Изменение цвета различных элементов

Раскраска файлов Редактирование раскраски файлов.

Сохранить параметры Сохранение текущей конфигурации, цветов

Подтверждения

В диалоге Подтверждения вы можете разрешить или запретить подтверждения для следующих операций:

— перезаписывание файлов назначения во время копирования файлов;

— перезаписывание файлов назначения во время переноса файлов;

— прерывание операций (нажали клавишу Esc);

— отключение сетевого устройства из меню дисков;

— повторное открытие файла в редакторе;

— очистка списка историй редактирования/просмотра, переходов и

Создание папки

Эта функция служит для создания папок. Вы можете использовать переменные окружения в строке ввода, которые перед созданием папки преобразуются в содержащееся в ней значение. Также существует возможность создавать несколько вложенных папок за один раз: для этого отделите имена папок друг от друга символом «\». Например:

Если включена опция «Обрабатывать несколько имен папок», то можно создавать несколько папок за один раз. В этом случае имена папок должны быть разделены символом-разделителем «;» или «,». Если эта опция включена и имя папки содержит в себе символ «;» (или «,»), то оно должно быть взято в кавычки. Например, если будет введено

C:\Foo1;»E:\foo,2;»;D:\foo3, то будут созданы папки с именами: «C:\Foo1», «E:\foo,2;» и «D:\foo3».

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

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

Параметр Только целые слова позволит искать только текст, который отделён от остального текста пробелом, знаком табуляции, возврата каретки, перевода строки или стандартными разделителями, которые по умолчанию такие: !%^&*()+|<>:»<>?`-=\[];’,./.

Выпадающий список Используя таблицу символов позволяет выбрать конкретную таблицу символов, используемую для поиска текста или заставляет FAR использовать все доступные ему таблицы, если выбран пункт Все таблицы символов, для поиска текста в файлах с различной кодировкой.

Для поиска файлов и в архивах нужно установить опцию Искать в архивах. В то же время, она существенно замедляет выполнение операции и не позволяет выполнять поиск во вложенных архивах.

Параметр Искать папки позволяет включать в список поиска папки, совпадающие с маской поиска. При этом счётчик найденных файлов учитывает также и найденные папки.

Поиск может выполняться на всех дисках, кроме сменных, на всех дисках, кроме сменных и сетевых, во всех папках, начиная с корневой, начиная с текущей папки, только в текущей папке или в отмеченных папках (в текущей версии FAR поиск в каталогах, которые являются символическими связями, не производится). Область поиска сохраняется в конфигурации. Также в диалоге поиска можно выбрать диск поиска. Эта возможность существует, если выбрана опция Искать по всему диску.

Во время или после завершения поиска вы можете использовать клавиши управления курсором для передвижения по списку файлов и кнопки для выполнения требуемых действий.

Во время или после завершения поиска доступны следующие кнопки:

Новый поиск Начать новую операцию поиска.

Перейти Прервать поиск, сменить текущую папку и поместить

Смотреть Просмотр выбранного файла. Если поиск не завершен,

Панель Создать временную панель и заполнить ее найденными

Стоп Прервать поиск. Доступна во время поиска.

Отмена Закрыть диалог поиска.

Для просмотра и редактирования найденных файлов могут быть использованы F3 и F4. Также редактирование и просмотр поддерживаются для файловых систем подключаемых модулей. Заметьте, что сохранение изменений в редакторе по клавише F2 для файловых систем подключаемых модулей будет вызывать операцию Сохранить в вместо обычного Сохранить.

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

Для выбора папки вы можете использовать клавиши управления курсором или набрать несколько начальных символов имени папки.

Нажмите Enter для перехода в выбранную папку.

Ctrl-R и F2 позволяют перечитать дерево папок.

История команд

История команд показывает список выполненных ранее команд. Кроме клавиш управления курсором доступны следующие клавиши:

Повторно выполнить команду Enter

Повторно выполнить команду в отдельном окне Shift-Enter

Поместить команду в командную строку Ctrl-Enter

Очистить историю команд Del

Копировать содержимое текущей позиции истории Ctrl-C в Буфер Обмена не закрывая списка или Ctrl-Ins

Для перехода к предыдущей или следующей команде непосредственно из командной строки, можно использовать клавиши Ctrl-E или Ctrl-X

Для выбора команды, кроме клавиш управления курсором и Enter, можно использовать подсвеченные буквы.

Для сохранения истории команд после выхода, используйте соответствующую опцию из диалога системных параметров.

1. Длинные команды в Windows 9x/Me перед помещением в историю

История просмотра и редактирования

История просмотра и редактирования файлов показывает список просмотренных или редактируемых ранее файлов. Кроме клавиш управления курсором доступны следующие клавиши:

Повторно открыть файл на просмотр Enter или редактирование

Поместить имя файла в командную строку Ctrl-Enter

Очистить список истории Del

Копировать содержимое текущей позиции истории Ctrl-C в Буфер Обмена не закрывая списка или Ctrl-Ins

Открыть файл в редакторе F4

Открыть файл в программе просмотра F3

Для выбора пункта в списке истории, кроме клавиш управления курсором и Enter, можно использовать подсвеченные буквы.

Элементы истории просмотра и редактирования после выбора передвигаются в конец списка. Вы можете использовать Shift-Enter, чтобы выбрать элемент без смены его позиции.

Для сохранения истории просмотра и редактирования файлов после выхода, используйте соответствующие опции из диалога системных параметров.

1. Длинные пути к файлам в Windows 9x/Me перед помещением в историю

История смены папок

История смены папок показывает список ранее посещаемых папок. Кроме клавиш управления курсором доступны следующие клавиши:

Перейти в указанную папку Enter

Поместить имя папки в командную строку Ctrl-Enter

Очистить список истории Del

Копировать содержимое текущей позиции истории Ctrl-C в Буфер Обмена не закрывая списка или Ctrl-Ins

Для выбора пункта в списке истории, кроме клавиш управления курсором и Enter, можно использовать подсвеченные буквы.

Элементы истории смены папок после выбора передвигаются в конец списка. Вы можете использовать Shift-Enter, чтобы выбрать элемент без смены его позиции.

Для сохранения истории смены папок после выхода, используйте соответствующую опцию из диалога системных параметров.

1. Длинные пути в Windows 9x/Me перед помещением в историю

Список задач показывает активные на данный момент задачи. Каждая строка списка содержит заголовок окна задачи.


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

Список задач может быть вызван либо из Меню команд, либо используя Ctrl-W. В последнем случае список задач также может быть вызван из программы просмотра или редактора.

Ctrl-R позволяет обновить список задач.

Сравнение папок

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

Вложенные папки не сравниваются. Для сравнения файлов используется их имя, дата и время, но не содержимое.

Меню пользователя

Меню пользователя предназначено для упрощения выполнения часто используемых операций. Оно содержит заданные пользователем команды и последовательности команд, которые могут быть выполнены с использованием этого меню. Меню пользователя может включать вложенные меню. Специальные метасимволы поддерживаются и в командах, и в заголовках команд меню. Обратите внимание, что символ !? ? ! может быть использован для ввода дополнительных параметров непосредственно перед выполнением команды.

Для редактирования или создания главного или местного меню пользователя применяется команда Меню пользователя

из Меню команд. Главное меню пользователя может быть только одно. Главное меню вызывается в том случае, если для текущей папки отсутствует местное меню. Местное меню может быть расположено в любой папке. Вы можете в любой момент переключиться между местным меню и главным меню с помощью клавиш SHIFT-F2. Так же вы можете вызвать местное меню из родительской папки с помощью клавиши BkSpace.

Вы можете добавить в пользовательское меню разделитель. Для этого нужно добавить новый пункт меню (команду), в котором в качестве «Горячей клавиши» указать «-» (минус), а поле «Метка» оставить пустым. Удалить такой разделитель можно только через Alt-F4

Для выполнения команды из меню пользователя нужно выбрать ее с помощью клавиш управления курсором и нажать Enter. Также можно использовать назначенную для данного пункта меню горячую клавишу.

Вы можете удалить вложенное меню или пункт меню, используя клавишу Del, вставить новое вложенное меню или пункт меню с помощью Ins и редактировать существующее вложенное меню или пункт меню с помощью F4. Нажмите Alt-F4 для редактирования меню в виде текстового файла.

В качестве горячих клавиш для обращения к пунктам меню могут использоваться цифры, буквы и функциональные клавиши (F1..F12). Если использованы F1 и F4, их первоначальные функции теряются. В этом случае для редактирования меню может применяться Shift-F4.

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

При редактировании или создании вложенного меню достаточно ввести горячую клавишу и заголовок вложенного меню.

Местные меню хранятся в текстовых файлах FarMenu.Ini. Главное меню по умолчанию хранится в Реестре, но его также можно держать в файле. Если создать местное меню в папке FAR, то оно будет использовано вместо хранящегося в Реестре главного меню.

Илон Маск рекомендует:  Asp обработка транзакций

Ассоциации файлов

FAR Manager поддерживает ассоциации файлов, которые позволяют задавать разнообразные действия на запуск, редактирование и просмотр файлов, заданных маской.

Вы можете добавить новые ассоциации с помощью команды Ассоциации файлов в Меню команд.

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

В списке ассоциаций доступны следующие действия:

Если для данного файла отсутствуют ассоциированные команды запуска и установлен параметр Использовать стандартные типы

в Системных параметрах, то FAR пытается использовать ассоциации Windows для запуска этого типа файлов.

Настройка ассоциации файлов

FAR позволяет задать шесть команд, ассоциированных с определенным типом файла, заданным маской:

Команда запуска по Enter Выполняется при нажатии Enter

Команда запуска по Ctrl-PgDn Выполняется при нажатии Ctrl-PgDn

Команда просмотра Выполняется при нажатии F3

Альтернативная команда Выполняется при нажатии Alt-F3 просмотра

Команда редактирования Выполняется при нажатии F4

Альтернативная команда Выполняется при нажатии Alt-F4 редактирования

Ассоциацию можно описать в поле Описание ассоциации.

Если вы не хотите, чтобы перед выполнением ассоциированной команды гасились панели, начните команду с символа ‘@’.

В ассоциированных командах могут использоваться специальные

Метасимволы

В ассоциированных командах, пользовательском меню и команде «Применить команду» могут использоваться специальные метасимволы:

!! символ ‘!’ ! Длинное имя файла без расширения !

Короткое имя файла без расширения !` Длинное расширение файла без имени (ext) !`

Короткое расширение файла без имени (ext) . Длинное имя файла с расширением !-! Короткое имя файла с расширением !+! Аналогично !-!, но если длинное имя файла утеряно

!@! Имя файла, содержащего имена помеченных файлов !$! Имя файла, содержащего короткие имена помеченных файлов !& Список помеченных файлов !&

Список помеченных файлов с короткими именами !: Текущий диск !\ Текущий путь !/ Короткое имя текущего пути

!# Префикс «!#», указанный перед символом ассоциации

!^ Префикс «!^», указанный перед символом ассоциации

Системные параметры

Снимать атрибут R/O Снимать атрибут «Только для чтения» с CD файлов с файлов, копируемых с CD.

Удалять в Корзину Разрешает удаление файлов с использованием

Использовать системную Использовать функции копирования файлов, функцию копирования предоставляемые операционной системой,

Копировать открытые Позволяет копировать файлы, которые для записи файлы открыты для записи другими программами.

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

Время бездействия Завершает работу FAR, если в течение

Сохранять историю Вызывает сохранение истории команд перед команд завершением и ее восстановление после

Сохранять историю Вызывает сохранение истории папок перед папок завершением и ее восстановление после

Сохранять историю Вызывает сохранение истории просмотра

просмотра и редактора и редактора перед завершением и ее

Использовать Если это опция включена, то при нажатии стандартные типы Enter на файле, тип которого известен файлов Windows и отсутствует в ассоциациях файлов

Автоматически При выборе CDROM из меню выбора дисков

монтировать CDROM FAR задвинет открытый лоток CD-привода.

Путь к Укажите полный путь, где FAR будет искать персональным плагинам «персональные» плагины в дополнение

Автозапись Если эта опция включена, FAR будет конфигурации автоматически сохранять конфигурацию.

Настройки панели

Показывать скрытые Разрешает показ файлов с атрибутами и системные файлы Скрытый и Системный. Этот режим также

Раскраска файлов Разрешает раскраску файлов

Автосмена папки Если эта опция включена, то передвижения

Пометка папок Разрешает пометку папок с использованием

Сортировать имена Применять режим сортировки по расширению папок по расширению не только к файлам, но и к папкам. При

Разрешить обратную Если эта опция включена, и текущий режим сортировку сортировки файловой панели выбран повторно,

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

Механизм автоматического слежения за файловой системой работает только для файловых систем FAT/FAT32/NTFS. Значение параметра, равное нулю соответствует состоянию «автоматическое обновление включено всегда». Для принудительного обновления панели используйте Ctrl-R.

Показывать заголовки Разрешает показ заголовков колонок колонок панели файлов.

Показывать строку Разрешает показ строки статуса статуса в панели файлов.

Показывать суммарную Разрешает показ суммарной информации информацию в нижней строке панели файлов.

Показывать свободное Разрешает показ свободного места место на текущем диске.

Показывать полосу Разрешает показ полосы прокрутки в панели прокрутки в панелях файлов и панели дерева папок.

Показывать количество Разрешает показ количества фоновых экранов. фоновых экранов

Показывать букву Показывать текущий режим сортировки режима сортировки в верхнем левом углу панели.

Настройки интерфейса

Часы в панелях Показывать часы в верхнем правом углу

Часы Показывать часы при редактировании при редактировании и просмотре файлов. и просмотре

Мышь Использовать мышь.

В панелях средняя Нажатие средней кнопки мыши в панелях кнопка равна Enter эквивалентно нажатию на клавишу Enter.

Показывать линейку Показывать назначения функциональных клавиш клавиш в нижней строке экрана. Эта опция

Всегда показывать меню Показывать меню вверху экрана, даже

Сохранение экрана Запуск программы сохранения экрана

История в строках Сохранять историю в строках ввода ввода диалогов некоторых диалогов FAR. Список ранее

Постоянные блоки Не снимать выделение при перемещении в строках ввода курсора в строках ввода в диалогах,

Установить формат Изменить формат командной строки FAR. командной строки Можно использовать следующие переменные:

Использовать правый Установите эту опцию, если вы испытываете Alt как AltGr проблемы с использованием комбинаций

Показывать общий Показывать общий индикатор во время индикатор копирования выполнения операции копирования. Это

Показывать информацию Выводить информации о средней скорости о времени копирования копирования, времени копирования и

Так как эта функция требует времени для сбора статистики, то на небольших файлах при выключенном «общем индикаторе копирования»

вы можете ничего не увидеть.

Автозавершение Разрешает использование функции в строках ввода автозавершения в строках ввода, имеющих

Использовать Ctrl-PgUp Комбинация клавиш Ctrl-PgUp в корневой для выбора диска папке:

Network (если плагин есть) или меню

Встроенная программа просмотра

Команды программы просмотра

Left Символ влево Right Символ вправо Up Строку вверх Down Строку вниз Ctrl-Left 20 символов влево Ctrl-Right 20 символов вправо PgUp Страницу вверх PgDn Страницу вниз Ctrl-Shift-Left В начало строк на экране Ctrl-Shift-Right В конец строк на экране Home, Ctrl-Home В начало файла End, Ctrl-End В конец файла

F1 Помощь F2 Перенос строк (включен, выключен) Shift-F2 Вид переноса строк (по буквам, по словам) F4 Переключить текстовый/16-ричный режим Alt-F5 Печать файла (используется плагин

F6 Переключиться в редактор

F7 Поиск Shift-F7, Space Продолжить поиск Alt-F7 Продолжить поиск в обратном направлении F8 Переключить режим просмотра текста DOS/Windows Shift-F8 Выбор пользовательской таблицы символов

Alt-F8 Изменить текущую позицию

Alt-F9 Изменение размеров окна FAR Manager Alt-Shift-F9 Вызов диалога настройки программы просмотра NumPad5,F3,F10,Esc Выход Ctrl-F10 Позиционировать на текущий файл без выхода. F11 Вызвать меню «Команды внешних модулей»

+ Перейти к следующему файлу — Перейти к предыдущему файлу Ctrl-O Показать пользовательский экран Ctrl-Alt-Shift Временно показать пользовательский экран

Ctrl-B Спрятать/Показать линейку функциональных

Ctrl-S Спрятать/Показать полосу прокрутки Alt-BS, Ctrl-Z Возврат к предыдущей позиции ПравыйCtrl-0..9 Установить закладку 0..9 в текущей позиции Ctrl-Shift-0..9 Установить закладку 0..9 в текущей позиции ЛевыйCtrl-0..9 Перейти к позиции закладки 0..9

Ctrl-Ins, Ctrl-C Скопировать выделенный в результате поиска

Ctrl-U Сбросить выделение, полученное в результате

Изменить текущую позицию

Этот диалог позволяет сменить позицию во встроенной программе просмотра

Вы можете ввести значение в виде десятичного смещения, процентов, или шестнадцатеричного значения.

Так же можете указать относительное значение — просто укажите знак + или — перед числом

Шестнадцатеричные значения вводятся в одной из следующих форм:

Десятичное смещение указывается в форме NNNNd.

Если вы явно указали знак процента «%», или форму шестнадцатеричного числа (‘0x’, ‘h’, ‘$’), или форму десятичного числа (‘d’) то отмеченные радио-кнопки игнорируются

Поиск в программе просмотра

Для поиска в программе просмотра вам доступны следующие режимы и опции:

Искать 16-ричный код

Команды управления курсором

Left Символ влево Ctrl-S Символ влево, но курсор не будет

Right Символ вправо Up Строку вверх Down Строку вниз Ctrl-Left Слово влево Ctrl-Right Слово вправо Ctrl-Up Прокрутка экрана вверх Ctrl-Down Прокрутка экрана вниз PgUp Страницу вверх PgDn Страницу вниз Home В начало строки End В конец строки Ctrl-Home В начало файла Ctrl-End В конец файла Ctrl-N В начало экрана Ctrl-E В конец экрана

Del Удалить символ (также может удалить блок,

BS Удалить символ слева Ctrl-Y Удалить строку Ctrl-K, Alt-D Удалить до конца строки Ctrl-BS Удалить слово слева Ctrl-T, Ctrl-Del Удалить слово справа

Операции над блоками

Shift-Клавиши курсора Пометка блока Ctrl-Shift-Клав.курсора Пометка блока Alt-серые клав.курсора Пометка вертикального блока Alt-Shift-Клав.курсора Пометка вертикального блока Ctrl-Alt-серые клавиши Пометка вертикального блока Ctrl-A Пометить весь текст Ctrl-U Снять пометку с блока Shift-Ins, Ctrl-V Скопировать блок из Буфера Обмена Shift-Del, Ctrl-X Переместить блок в Буфер Обмена Ctrl-Ins, Ctrl-C Скопировать блок в Буфер Обмена Ctrl- Добавить блок в Буфер Обмена Ctrl-D Удалить блок Ctrl-P Копировать блок в текущую позицию курсора

Ctrl-M Перенести блок в текущую позицию курсора

Alt-U Сдвинуть блок влево Alt-I Сдвинуть блок вправо

F1 Помощь F2 Сохранить файл Shift-F2 Сохранить файл как.

Alt-F5 Печать файла/выделенного блока

F6 Переключиться в программу просмотра F7 Поиск Ctrl-F7 Замена Shift-F7 Продолжить поиск/замену F8 Переключение между DOS/Windows текстом Shift-F8 Выбор пользовательской таблицы символов

Alt-F8 Перейти на указанную строку и позицию Alt-F9 Изменение размеров окна FAR Manager Alt-Shift-F9 Вызов диалога настроек редактора

F10, Esc Выход Shift-F10 Сохранение и выход Ctrl-F10 Позиционировать на текущий файл

F11 Вызвать меню «Команды внешних модулей» Alt-BS, Ctrl-Z Отмена действия Ctrl-L Запретить модификацию редактируемого

Ctrl-O Показать пользовательский экран Ctrl-Alt-Shift Временно показать пользовательский экран

Ctrl-Q Рассматривать следующую комбинацию

ПравыйCtrl-0..9 Установить закладку 0..9 в текущей позиции Ctrl-Shift-0..9 Установить закладку 0..9 в текущей позиции ЛевыйCtrl-0..9 Перейти к позиции закладки 0..9 Shift-Enter Вставить в позицию курсора имя текущего

Ctrl-Shift-Enter Вставить в позицию курсора имя текущего

Ctrl-F Вставить в позицию курсора полное имя

1. Пользовательские таблицы символов находятся в папке

2. Alt-U/Alt-I сдвигают текущую строку, если блок не выделен.

3. Alt-Код символа на дополнительной клавиатуре вставляет в

4. Если вы перетаскиваете имя файла из Проводника в редактор

5. Если блок не выделен, то Ctrl-Ins/Ctrl-C помечают текущую

Сохранить файл как.

Редактируемый файл можно сохранить под другим именем — нажать Shift-F2 и указать другое имя.

Вы можете также указать формат представления символа перевода строки:

Исходный формат Не изменять символы перевода строк.

В формате DOS/Windows (CR LF) В качестве последовательности перевода строк будут использоваться два символа — возврат каретки и перевод строки (CR LF), принятые в DOS/Windows.

В формате UNIX (LF)

В качестве последовательности перевода строк будет использоваться символ перевода строки (LF), принятый в UNIX.

В формате MAC (CR) В качестве последовательности перевода строк будет использоваться символ возврата каретки (CR), принятый в MAC.

Перейти на указанную позицию

В этом диалоге можно указать строку и колонку для перехода.

Вы можете вводить два числа — строку и колонку. Разделитель чисел — одни из набора символов: «. ;» или пробел.

Если вы введете «,Колонка», то редактор перейдет на указанную колонку в текущей строке.

Также есть возможность перехода по процентам. Введите 50% и вы перейдете ровно в середину текста.

Повторное открытие файла в редакторе

FAR Manager отслеживает все попытки повторного открытия в редакторе уже редактируемых файлов. Правила повторного открытия следующие:

1. Если файл не был изменен, то при отключенной опции «Повторное открытие файла в редакторе» в диалоге подтверждений происходит переход к редактированию текущего файла без дополнительных запросов.

2. Если файл был изменен или включена опция «Повторное открытие файла в редакторе», то существует три варианта действий:

Текущий — Продолжить редактирование того же файла.

Новая копия — Файл будет открыт для редактирования в новой

Перегрузить — Текущие изменения не сохраняются и в редактор

Предупреждение: Путь к редактируемому файлу не существует

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

Предупреждение: Файл был изменен внешней программой

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

внесенные внешней программой, будут утеряны.

Меню выбора диска

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

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

Клавиша Del может использоваться для:

— отсоединения от сетевого диска.

— удаления SUBST диска.

— извлечения дисков из CD-ROM и сменных приводов. В Windows

Ctrl-1 — Ctrl-8 переключают отображение различной информации:

Ctrl-1 — тип диска; Ctrl-2 — сетевое имя

Ctrl-3 — метка диска; Ctrl-4 — файловая система; Ctrl-5 — общее и свободное место на диске; Ctrl-6 — показ параметров сменных дисков; Ctrl-7 — показ имен подключаемых модулей; Ctrl-8 — показ параметров компакт-дисков.

Настройки меню выбора диска сохраняются в конфигурации FAR.

При включенной опции «Использовать Ctrl-PgUp для выбора диска», комбинация клавиш Ctrl-PgUp аналогична клавише Esc — отказаться от выбора диска и закрыть меню.

Shift-Enter вызывает Проводник с показом корня указанного диска (работает только для дисков).

Ctrl-R позволяет обновить меню выбора диска.

Отключение сетевого устройства

Отключить сетевое устройство можно из Меню выбора диска клавишей Del.

Опция [x] Восстанавливать при входе в систему доступна для изменений только для сетевых устройств, подключенных постоянно.

Выдачу подтверждения можно отключить в диалоге «Подтверждения»

Для более удобного и наглядного представления файлов и папок на панелях в FAR Manager предусмотрена возможность цветовыделения файловых объектов. Файловые объекты можно объединять по разным критериям (маски файлов, файловые атрибуты) в группы и назначать собственные цвета.

Раскраску файлов можно включить или отключить в диалоге настройки панелей (пункт «Параметры|Раскраска файлов»).

Изменить параметры любой группы раскраски можно из меню «Параметры» (пункт «Раскраска файлов»).

Список групп раскраски файлов

Меню групп раскраски файлов позволяет манипулировать списком. Доступны следующие сочетания клавиш:

Ins — Добавить новую группу раскраски

F5 — Дублировать текущую группу

Del — Удалить текущую группу

Enter или F4 — Изменить параметры текущей группы раскраски

Ctrl-R — Восстановить предопределенные группы раскраски

Ctrl-Up — Передвинуть группу вверх.

Ctrl-Down — Передвинуть группу вниз.

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

Редактирование раскраски файлов

Диалог Редактирование раскраски файлов позволяет изменить параметры группы раскраски файлов. Каждое определение группы включает:

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

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

Если вы выключите опцию «Совпадение с маской (масками)», то маски файлов будут исключены из анализа, а сравнение будет проводиться только по атрибутам.

Файл принадлежит к группе раскраски, если:

одной маске (если анализ масок отключен, то имя файла не

Атрибуты «Сжатый», «Зашифрованный» и «Символическая связь» используются только на дисках с файловой системой NTFS. Причем, атрибуты «Зашифрованный»

и «Символическая связь» используется только в Windows 2000/XP.

Настройки программы просмотра

В этом диалоге можно изменить параметры внешней и встроенной программы просмотра.


Внешняя программа просмотра

Запускать по F3 Запускать внешнюю программу просмотра

Запускать по Alt-F3 Запускать внешнюю программу просмотра

Команда просмотра Команда для запуска внешней программы

Встроенная программа просмотра

Сохранять позицию Сохранять и восстанавливать позицию файла в недавно просмотренных файлах.

Сохранять закладки Сохранять и восстанавливать закладки на

Автоопределение Если вы пользуетесь несколькими таблицами таблицы символов символов, вы можете включить эту опцию для

Размер табуляции Количество пробелов при показе символа

Показывать полосу Показывать полосу прокрутки во внутренней прокрутки программе просмотра. Также эта опция может

Показывать стрелки Если текст сдвигается влево или справа сдвига остается текст, то окно просмотра будет

Если внешняя программа просмотра назначена на клавишу F3, она будет запускаться только в том случае, если ассоциированная

программа просмотра для данного типа файлов отсутствует.

Измененные настройки не влияют на ранее открытые окна встроенной программы просмотра.

Диалог настройки также можно вызвать из программы просмотра, нажав Alt-Shift-F9. Изменения вступят в силу немедленно, но действовать будут только на текущий сеанс работы.

В этом диалоге можно изменить используемые по умолчанию параметры внешнего и встроенного редакторов.

Запускать по F4 Запускать внешний редактор по F4.

Запускать по Alt-F4 Запускать внешний редактор по Alt-F4.

Команда Команда для запуска внешнего редактора. редактирования Для указания имени просматриваемого файла

Пробелы вместо Заменять символ Tab на соответствующее табуляции количество пробелов.

Постоянные блоки Не удалять пометку блока при перемещении

Del удаляет блоки Если есть помеченный блок, Del будет

Автоотступ Включает режим автоотступа при вводе

Сохранять позицию Сохранять и восстанавливать позицию файла в недавно отредактированных файлах.

Сохранять закладки Сохранять и восстанавливать закладки на

Автоопределение Если вы пользуетесь несколькими таблицами таблицы символов символов, вы можете включить эту опцию

Размер табуляции Количество пробелов при показе символа

Курсор за пределами Разрешить перемещение курсора за пределы строки строки.

Блокировать При открытии на редактирование файла, редактирование имеющего атрибут «только для чтения», файла с атрибутом R/O редактор также переходит в режим запрета

Предупреждать при Перед открытием на редактирование файла, открытии файла с имеющего атрибут «только для чтения», атрибутом R/O будет выдаваться предупреждающее сообщение.

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

Измененные настройки не влияют на ранее открытые окна редактора.

Диалог настройки так же можно вызвать из редактора, нажав Alt-Shift-F9. Изменения вступят в силу немедленно, но действовать будут только на текущий сеанс работы.

Автоопределение таблицы символов

Если вы пользуетесь несколькими таблицами символов и установили таблицу с распределением частот символов для вашего языка (например, для русского языка должна быть установлена таблица «Addons\Tables\Russian\Dist.Rus.reg»), то FAR постарается подобрать для просмотра/редактирования наиболее подходящую кодовую таблицу символов. Заметьте, что корректное определение не гарантируется, особенно для маленьких или нетипичных текстовых файлов.

Вы можете найти некоторые таблицы символов в папке «Addons\Tables» дистрибутива FAR.

Установка файловых атрибутов

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

Для выделенных объектов (файлов и папок) контрольные переключатели имеют 3 состояния:

Если выделенные объекты имеют одинаковые атрибуты, то контрольные переключатели будут 2-х позиционными — установить/сбросить. Исключение составляет случай, когда среди выделенных объектов встречаются папки — в этом случае все контрольные переключатели будут 3-х позиционными.

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

Если среди выделенных объектов нет папок, то опция «Process subfolders» («Обрабатывать вложенные папки») будет недоступна.

Атрибуты Compressed («Сжатый») и Encrypted («Зашифрованный») могут быть изменены только на дисках с файловой системой NTFS. Причем, атрибут Encrypted («Зашифрованный») используется только в Windows 2000/XP. Оба атрибута взаимоисключающие, т.е. можно выставить только один из них.

Для символических связей в диалоге отображается информация об оригинальной папке (только в NTFS/Windows 2000/XP).

Поддерживаются три различных времени файла:

— время последней модификации (Modification);

— время создания файла (Creation);

— время последнего доступа (Last access).

Для дисков с файловой системой FAT часы, минуты и секунды времени последнего доступа всегда равны нулю.

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

Кнопка Current (Текущее) позволяет заполнить поля времени файла текущим временем.

Кнопка Original (Исходное) заполняет поля времени файла оригинальными значениями. Доступна для одиночного файлового объекта.

Для cимволических связей (поддерживаемых только в NTFS/Windows 2000/XP) дата и время не выставляются.

Ссылки на папки

Ссылки на папки позволяют обеспечить быстрый доступ к часто используемым папкам. Для создания ссылки на текущую папку нужно нажать Ctrl-Shift-0..9. После этого, чтобы перейти в папку, записанную в ссылке, достаточно нажать ПравыйCtrl-0..9. Если ПравыйCtrl-0..9 нажат в строке редактирования, то путь ссылки будет вставлен в эту строку.

Пункт Ссылки на папки в Меню команд позволяет просматривать, устанавливать, редактировать и удалять ссылки на папки.

В режиме редактирования (F4) вы не можете сделать ссылку на плагиновую панель.

Фильтр файловой панели

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

Меню фильтра состоит из двух частей. В верхней части расположены пользовательские фильтры. С помощью клавиш Ins, Del и F4 вы можете добавлять, удалять и редактировать их. Каждый пользовательский фильтр включает необязательный заголовок и маску файлов, либо несколько масок файлов, разделенных запятыми или точкой с запятой.

Илон Маск рекомендует:  Селектор элемента

В нижней части меню фильтра находятся маски всех файлов, содержащихся в данный момент в активной панели файлов.

Для выбора элементов меню фильтров могут использоваться клавиши пробела, ‘+’ и ‘-‘. Элементы, выбранные с помощью пробела или ‘+’, помечаются символом ‘+’. Если такие элементы присутствуют, то будут показаны только удовлетворяющие им файлы. Элементы, выбранные с помощью ‘-‘, помечаются символом ‘-‘, и все удовлетворяющие им файлы будут исключены из панели файлов.

Пометка пользовательских фильтров сохраняется в конфигурации.

Когда фильтр используется в панели, это индицируется символом ‘*’ после буквы режима сортировки в верхнем левом углу панели.

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

Описания можно посмотреть в соответствующих режимах просмотра панели файлов. По умолчанию этими режимами являются Описания и Длинные описания.

Команда Описание файлов (Ctrl-Z) из Меню файлов

предназначена для добавления описаний к выбранным файлам.

Имена списков описаний могут быть изменены в диалоге Описания файлов из меню Меню параметров. В этом диалоге также можно установить режим обновления локальных описаний. Обновление может быть запрещено совсем, разрешено, только если текущий режим просмотра файловой панели показывает описания, или разрешено всегда. По умолчанию FAR устанавливает атрибут «Hidden» на созданные списки описаний, но вы можете это запретить, выключив опцию «Устанавливать атрибут «Hidden» на новые списки описаний» в этом же диалоге. Также здесь вы можете указать позицию для выравнивания новых описаний в списке описаний.

Если файл с описаниями имеет атрибут «Только для чтения», то FAR не обновляет описания и, после операций переименования/удаления файловых объектов, будет выведено сообщение об ошибке. При включенной опции

Обновлять файл описаний с атрибутом «Только для чтения» FAR попытается корректно обновить описания.

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

Настройка режимов просмотра панели файлов

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

Команда Режимы панели файлов из меню Меню параметров

позволяет изменить параметры режимов просмотра. Сначала она предлагает выбрать требуемый режим из списка. В этом списке режим 0 соответствует режиму просмотра, вызываемому по ЛевыйCtrl-0 (альтернативный полный), режим 1 соответствует краткому режиму (ЛевыйCtrl-1), режим 2 соответствует среднему режиму (ЛевыйCtrl-2) и так далее. После выбора режима появляется диалог, в котором можно изменить следующие параметры:

— Типы колонок — типы колонок кодируются с помощью одной или нескольких букв, разделенных запятыми. Допускаются следующие типы колонок:

N[M,O,R] — имя файла

S[C,T] — размер файла

P[C,T] — упакованный размер файла

D — дата модификации файла T — время модификации файла

DM[B,M] — дата и время модификации файла DC[B,M] — дата и время создания файла DA[B,M] — дата и время последнего доступа к файлу

A — атрибуты файла Z — описание файла O — владелец файла LN — количество жестких связей

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

Атрибуты файла имеют следующие обозначения:

— Ширина колонок — позволяет изменить ширину колонок панели. Если ширина равна 0, то используется значение по умолчанию. Если ширина колонки с именем, описанием или владельцем равна 0, она будет подсчитана автоматически, в зависимости от ширины панели. Для правильной работы с различной шириной экрана настоятельно рекомендуется, чтобы в каждом режиме просмотра была хотя бы одна колонка с автоматически вычисляемой шириной.

Для использования 12-часового формата времени надо увеличить на единицу стандартную ширину колонки времени файла или колонки времени и даты файла. После дальнейшего увеличения в этих колонках также будут показаны секунды и миллисекунды.

Для показа года в 4-х символьном формате нужно увеличить ширину колонки даты на 2.

— Типы колонок строки статуса и Ширина колонок строки статуса — аналогично «Типам колонок» и «Ширине колонок», но для строки статуса панели.

— Полноэкранный режим — показывать панель во весь экран вместо половины экрана.

— Выравнивать расширения файлов — показывать расширения файлов выравненными.

— Выравнивать расширения папок — показывать расширения папок выравненными.

— Показывать папки заглавными буквами — показывать все имена папок в верхнем регистре, вне зависимости от реального регистра.

— Показывать файлы строчными буквами — показывать все имена файлов в нижнем регистре, вне зависимости от реального регистра.

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

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

— Использовать регистрозависимую сортировку — использовать регистрозависимую сортировку имен файлов.

Группы сортировки могут применяться в панели файлов совместно с сортировкой по имени или по расширению. Они активизируются при нажатии Shift-F11 и позволяют задать правила сортировки файлов, дополняющие уже действующие.

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

Команда Группы сортировки из Меню команд позволяет удалять, создавать и редактировать группы сортировки, используя клавиши Del, Ins и F4. Группы, находящиеся выше разделителя меню, относятся к началу файловой панели, и все файлы, попавшие в эти группы, будут расположены выше не попавших в них файлов. Группы, находящиеся ниже разделителя меню, относятся к концу файловой панели, и все файлы, попавшие в эти группы, будут расположены ниже не попавших в них файлов.

Маски файлов часто используются в командах FAR для выбора отдельных файлов и папок или их групп. Маски могут включать обычные допустимые в именах файлов символы, ‘*’ и ‘?’, а также специальные выражения:

* любое количество символов;

[c,x-z] любой символ из находящихся в квадратных скобках.

Например, файлы ftp.exe, fc.exe и f.ext могут быть выбраны с помощью маски f*.ex?, маска *co* выберет и color.ini, и edit.com, маска [c-f,t]*.txt может выбрать config.txt, demo.txt, faq.txt и tips.txt.

Во многих командах FAR можно задать несколько разделенных запятыми или точкой с запятой масок. Например, чтобы выбрать все документы, вы можете ввести *.doc,*.txt,*.wri в команде «Пометить группу».

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

В некоторых ситуациях (поиск файлов,

фильтр файловой панели, пометка файлов, ассоциации файлов, группы сортировки и раскраска файлов) можно использовать маски исключения. Маска исключения есть одна или несколько масок файлов, которой не должны соответствовать имена требуемых файлов, она отделяется от основной маски символом ‘|’.

Примеры использования масок исключения: 1. *.cpp Все файлы с расширением cpp. 2. *.*|*.bak,*.tmp Все файлы, кроме файлов с расширением bak и tmp. 3. *.*| Ошибка — введен спецсимвол |, но сама маска исключения не указана. 4. *.*|*.bak|*.tmp Ошибка — спецсимвол | не может встречаться более одного раза. 5. |*.bak Обрабатывается как *|*.bak

Через запятую (или точку с запятой) перечисляются маски файлов, а при помощи ‘|’ маски-включения отделяются от масок-исключения.

Для обработки файлов и папок панели файлов они могут быть выбраны несколькими различными способами. Ins помечает файл под курсором и перемещает курсор вниз, Shift-Клавиши курсора позволяют перемещать курсор в различных направлениях.

Gray + и Gray — выбирают или снимают пометку с группы с использованием одной или нескольких разделенных запятыми

масок файлов. Gray * инвертирует текущую пометку. Команда Восстановить пометку (Ctrl-M) восстанавливает выбранную до этого группу.

Ctrl- и Ctrl- и Alt- инвертирует текущую пометку, включая папки. Если параметр Пометка папок в диалоге Настроек панели

включена, это работает аналогично Gray *.

Shift- и Shift- (Ctrl и клавишу с точкой), желаемую последовательность клавиш, опять Ctrl- и клавишу, либо комбинацию клавиш, на которую будет назначена эта макрокоманда. Во время записи макрокоманды в верхнем левом углу экрана выводится символ ‘R’.

Чтобы удалить макрокоманду и вернуть клавише ее первоначальную функцию, дважды нажмите Ctrl- и затем клавишу, на которую назначена макрокоманда.

Дополнительно к стандартным комбинациям клавиш FAR можно назначать макрокоманды на Ctrl-Shift- , Ctrl-Alt- и Alt-Shift- .

FAR поддерживает несколько независимых наборов макрокоманд: макрокоманды оболочки, программы просмотра, редактора, а также некоторые другие типы макрокоманд. Наборы макрокоманд сохраняются по команде «Сохранить параметры»

из Меню параметров.

Для задания дополнительных параметров макрокоманды начните или завершите ее запись с помощью Ctrl-Shift-. вместо Ctrl-. и выберите желаемые опции в появившемся диалоге.

Некоторые комбинации клавиш (в частности, Enter, Esc, F1, Ctrl-F5) невозможно ввести напрямую, поскольку они имеют специальные функции. Для того, чтобы назначить макрос на одну из таких комбинаций клавиш, выберите ее из выпадающего списка.

Для задания дополнительных параметров макрокоманды начните или завершите ее запись с помощью Ctrl-Shift-. вместо Ctrl-. и выберите желаемые опции в появившемся диалоге:

Разрешить во время выполнения вывод на экран

Если отключить этот параметр, то во время выполнения макрокоманды FAR Manager отключает перерисовку экрана. Все изменения будут отображены после завершения макрокоманды.

Выполнять после запуска FAR

Позволяет выполнять макрокоманду сразу после запуска FAR Manager.

Опасный PHAR. Эксплуатируем проблемы десериализации в PHP на примере уязвимости в WordPress

Содержание статьи

Пристальное внимание эта атака привлекла совсем недавно, поэтому существует огромное количество потенциально уязвимых приложений. Что касается уязвимости в WordPress, то о ней разработчикам сообщили аж в феврале 2020 года, но до сих пор никакого фикса они не выпустили.

Предыстория атаки

О возможности такой атаки начали много говорить после доклада Сэма Томаса (Sam Thomas) из Secarma на недавно прошедшем Black Hat USA 2020. Историю подхватили СМИ, и понеслось.

Хотя первые звоночки можно было заметить еще в багтрекере PHP в 2015 году. Тогда был создан тикет, в котором описывалась проблема чтения памяти за пределами выделенного буфера (buffer over-read) при десериализации метаданных архива PHAR.

Помимо этого, в 2020 году на HITCON CTF Quals в таске известного безопасника Orange Tsai под названием Baby^H Master PHP 2020 одним из пунктов правильного решения значилась эксплуатация этой особенности поведения PHP при работе с архивами PHAR. Подробнее об этом ты можешь прочитать в посте Омара beched Ганиева на форуме RDot. Там же ты найдешь все сопутствующие ссылки. Довольно интересно, рекомендую.

Итак, сама идея не нова, а лишь недавно была раскручена и использована для проведения атак на реально существующие приложения. Пришло время пощупать все своими руками!

Стенд

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

После запуска контейнера устанавливаем нужные утилиты.

Затем скачиваем нужную версию WordPress. Фикса на данный момент до сих пор нет, так что можно скачивать любую.

Запускаем необходимые сервисы и создаем юзера и базу данных.

Установка WordPress на стенде

Осталось только установить расширение Woocommerce, создать пользователя с правами автора, и стенд готов к экспериментам.

Немного о PHAR

PHAR — это PHP Archive, специально сформированный архив, который может быть обработан и исполнен интерпретатором PHP. За это отвечает одноименный модуль PHAR, который входит в стандартную поставку PHP начиная с версии 5.3. Архивы PHAR были введены как удобный способ группировки и доставки файлов PHP. Можно упаковать целое приложение и все еще иметь возможность запустить его прямо из этого файла. При этом его не нужно даже распаковывать на диск. Так, например, поставляется менеджер модулей PEAR или всем известный composer .

Composer поставляется как единый файл PHAR

Для создания файлов PHAR можно использовать сам интерпретатор PHP.

create-phar.php

Чтобы иметь возможность создавать архивы, нужно запустить репозиторий с отключенной настройкой phar.readonly .

Создание тестового файла PHAR

По дефолту сжатие не используется.

Если мы попытаемся выполнить полученный файл, то интерпретатор вернет ошибку.

Попытка выполнить созданный тестовый файл PHAR номер раз

При простом обращении к файлу модуль пытается прочитать index.php . Так как этого файла в нашем архиве нет, возникает ошибка. Если мы немного дополним тестовый скрипт, то получим архив, который будет отрабатывать при прямом обращении к нему.

create-phar.php

Любые архивы PHAR одинаково легко вызываются как непосредственно из командной строки, так и через веб-сервер. Модуль реализует эту функцию с помощью потоков. Чтобы вызывать какие-то конкретные скрипты из контейнера, существует враппер phar:// .

exec-internal.php

Результатом выполнения будет строка Hello World! .

Что касается формата файла, то его описание можно найти в официальной документации, в том числе и на русском. Любой уважающий себя файл PHAR включает в себя заглушку, манифест, содержимое и подпись.

Пара слов о заглушке (stub). Она, как правило, содержит загрузчик, который выполняется при прямом запуске архива или когда его подключают через include без указания конкретного файла внутри.

По дефолту там находится обычный код на PHP, который после нескольких манипуляций инклудит index.php . Но никто не мешает нам указать собственный лоадер. Это можно сделать, используя метод Phar::setStub(). В качестве его параметра указываем код.

Последней структурой в заглушке всегда должна идти __HALT_COMPILER(); . То есть минимально возможный код выглядит так:

Запомним, так как это пригодится нам чуть дальше.

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

Структура манифеста PHAR-архива

Обрати внимание на раздел метаданных, они хранятся в формате serialize и могут быть как глобальными, так и привязанными к конкретному файлу. Установить глобальные метаданные можно при помощи метода Phar::setMetadata. В качестве аргумента можно передать любую переменную PHP.

test-metadata.php

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

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

php — Преимущества PHAR-архивов в PHP

PHP 5.3 имеет новую функцию с именем PHAR, похожей на JAR в JAVA. Это в основном архив файлов PHP. В чем его преимущества? Я не могу понять, как они могут быть полезны в веб-сценарии.

Любое другое использование, отличное от «простоты развертывания» — развертывание всего приложения путем простого копирования одного файла

    3 5
  • 29 мар 2020 2020-03-29 12:23:49
  • aWebDeveloper

5 ответов

Любой инструмент, который работает в одном файле «неожиданно», работает со всеми файлами приложения одновременно.
Например. transport: вы можете загрузить все приложение через один элемент ввода/файла без дополнительных шагов.
Например. подписание приложения: контрольная сумма/подпись файла → контрольная сумма/подпись для всего приложения.
.

  • 29 мар 2020 2020-03-29 12:23:50
  • VolkerK

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

Библиотеки также могут использоваться без расширения.

  • 29 мар 2020 2020-03-29 12:23:50
  • Artefacto

По моему опыту, свободно упакованные исходные файлы PHP, сидящие в рабочей среде, приглашают возиться с живым кодом, когда требуется исправление. Развертывание в файле .phar обескураживает это поведение и помогает укрепить лучшие практики, то есть строить и тестировать в локальной среде, а затем развертывать на производстве.

  • 29 мар 2020 2020-03-29 12:23:50
  • prairiehat

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

  • 29 мар 2020 2020-03-29 12:23:50
  • Pavel Dubinin

Огромные преимущества для проектов с открытым исходным кодом (в определенном порядке).

Простое развертывание означает более легкое принятие. Представьте себе: вы устанавливаете систему CMS, форум или блог на свой веб-сайт, перетаскивая ее в свой FTP-клиент. Что это.

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

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

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

Простые библиотеки. Вам не нужно определять, как использовать установщик PEAR, или выяснить, имеет ли в этой или той библиотеке вложенную структуру каталогов, или вам нужно включить X, Y или Z (в этом порядке?). Просто загрузите, включите архив, начните кодирование.

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

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

Не poo-poo упрощает развертывание. Это не будет иметь никакого значения для доморощенного SaaS, но для тех, кто отправляет или устанавливает пакеты программного обеспечения PHP, это игровой чейнджер.

Преимущества архивов PHAR в PHP

PHP 5.3 имеет новую функцию с именем PHAR, похожей на JAR в JAVA. Это в основном архив файлов PHP. В чем его преимущества? Я не могу понять, как они могут быть полезны в веб-сценарии.

Любое другое использование, отличное от «простоты развертывания» — развертывание всего приложения путем простого копирования одного файла

5 ответов

Огромные преимущества для проектов с открытым исходным кодом (в определенном порядке).

Простое развертывание означает более легкое принятие. Представьте себе: вы устанавливаете систему CMS, форум или блог на свой веб-сайт, перетаскивая ее в свой FTP-клиент. Что это.

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

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

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

Простые библиотеки. Вам не нужно определять, как использовать установщик PEAR, или выяснить, имеет ли в этой или той библиотеке вложенную структуру каталогов, или вам нужно включить X, Y или Z (в этом порядке?). Просто загрузите, включите архив, начните кодирование.

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

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

Не poo-poo упрощает развертывание. Это не будет иметь никакого значения для доморощенного SaaS, но для тех, кто отправляет или устанавливает пакеты программного обеспечения PHP, это игровой чейнджер.

Как работать с .phar файлом?

У меня есть файл .phar, как я могу открыть его и изменить содержание? Я не знаком с этим типом файла , так что пожалуйста , объясните , шаг за шагом решением я пытался использовать PHP , $phar->extractto() чтобы распаковать архив без результатов.

Если бы вы искали вторую часть вашего вопроса, «работу с .phar файлом», вы нашли бы https://cweiske.de/tagebuch/php-phar-files.htm

Это говорит вам , что вы можете использовать собственный РНР phar команду для извлечения и повторное добавление файлов.

Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL