Управление работой Composr CMS

Автор Филип Витналл (ocProducts)
Перевод Наталия Хорошая
Commandr, среда командной строки Composr, разработана для опытных системных администраторов,
которые быстрее находят командные строки в использовании, чем альтернативы на основе графического интерфейса.

 

Введение.

Мы разработали Commandr для дополнения функций Admin Zone, а не для их замены.
Commandr
Commandr
Нажмите для увеличения.
Интерфейс позволяет вводить команды в виде:
  • Код PHP
  • Запросы к базе данных SQL
  • Скрипты командного кода
  • Команды Commandr-code, которые можно использовать для полноценного взаимодействия с репозиторием Composr
Доступ к Commandr можно получить из: Admin Zone> Tools> Commandr
Или в качестве наложения с помощью кнопки в нижнем колонтитуле, если вы оставили ее
включенной, что очень удобно.

Команды.

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

Основной формат команды следующий:

Code (Bash)
 command_name -o -long_option -o2=value -long_option2="value 2" parameter1 "parameter 2" parameter3


Этот пример состоит из:
  • Имя команды (без пробелов);
  • за которым следует список параметров, в кратком или длинном формате, что определяется соответствующей командой, с дополнительными значениями (в кавычках, если они содержат пробелы);
  • затем список значений параметров (в кавычках, если они содержат пробелы).

Commandr поддерживает обратную косую черту, поэтому вы можете избегать кавычек в передаваемых значениях:

  Code (Bash)
 
 echo "Grandma said: \"Hello world!\""
 
 

Чтобы получить полный список команд Commandr, просто выполните commands команду в Commandr:

   Code (Bash)
 commands



Вы можете найти справочную информацию о любой команде, просто используя -h help флаг справки команды или набрав help <command>.

Код PHP.

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

Например:

  Code (Bash)
 :echo "Hello"; echo " World.";


  Место хранения
Предел хранения
  Для хранения переменных существует ограничение памяти в 4 КБ, чтобы избежать замедления запросов и достижения максимальных ограничений размера файлов cookie.
:
  Commandr попытается сохранить:
  1. переменные
  2. включенный код
  3. включенные языковые файлы
 Между запросами команд. Это позволяет выполнять последовательности команд,
не помещая их все в одну строку. 
Реализуется с использованием файлов cookie.


SQL запросы.

SQL-запросы также могут выполняться Commandr, просто добавляя префикс выполняемого запроса с помощью символа «at» ( @). 
Как и в случае с командами PHP, результаты запроса будут выводиться соответствующим образом.
Выполнение SQL-запроса
Выполнение SQL-запроса
Нажмите для увеличения
  • Разделение нескольких запросов точкой с запятой не поддерживается.
  • Несмотря на то, что команды Commandr однострочные, вставка многострочных команд обычно работает. 
  • Единственным исключением будет, разрыв строк, если они являются частью строк в запросе, то в          этом случае они будут заменены пробелами.
  • Если Вам разрешено выполнять запросы, не предназначенные для чтения, такие как INSERT и DELETE, то вы получите сообщение «Ошибка: ваш поиск не дал результатов»Не обращайте на это внимания, это просто общие сообщения, которые сообщают вам, что результатов найдено не было.

Файловая система.

  Одной из основных особенностей Commandr является управление различными аспектами Composr через виртуальную файловую систему, известную как репозиторий Composrтакже известный как Commandr-fs. К файловой системе привязано много разных типов каталогов, представляющих разные части системы Composr.
  Если вы знаете, как программировать, довольно просто написать больше хуков.
  Для использования репозитория, простого перемещения , можно использовать стандартные команды UNIX файловой системы ( cdpwdlsи т.д.), а также изменять файлы аналогичным образом.

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

Запуск из обычной командной строки операционной системы.

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

Например, в Linux вы можете запустить его с помощью этой команды:

  Code (Bash)
 данные php / commandr.php
  

 
Commandr в первую очередь разработан для использования из интерфейса HTML, т.е. внутри Composr, поэтому такие вещи, как редактор текстовых файлов, работать не будут. Однако большинство вещей действительно работает.

Примеры команд.

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

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

Например:

  Code (Bash)
 find_codes "function require_code("
 
 
Этот пример покажет вам, в каком файле находится этот фрагмент кода, т. е. где определена require_code функция.
В этом случае это будет видно sources/global.php.
 
  • Открывайте ссылки на страницы в пути

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

Commandr поставляется с мощной командой, call, которая может открыть экран для вас на ходу, с единственным параметром - только со ссылкой на страницу.

Например:

   Code (Bash)
 call cms:cms_downloads:add
 
 
В этом примере открывается форма «Добавить загрузку».
 
  • Поиск участников

whois - эта команда может быть использована, чтобы быстро узнать информацию о пользователе.
Например, ID, имя пользователя и IP-адрес.
Эта команда принимает в качестве идентифицирующей информации имя пользователя, его идентификатор,
IP-адрес или адрес электронной почты.

Например:

  Code (Bash)
 eg: whois 2
 



В этом примере выполняется поиск члена с идентификатором №2.
 
whois команда
 
команда <kbd> whois </kbd>
Нажмите для увеличения
 
  • Блокировка участников

Вы можете использовать ban_member - команду, чтобы забанить определенного участника, используя его / ее имя пользователя или идентификатор.

Например:

  Code (Bash)
 ban_member Sam_Witwicky
 

Например:

 Code (Bash)
 ban_member 4
 
  • Присвоение баллов

Команда give полезна для начисления очков участнику. 
Команда принимает 3 параметра: идентификатор участника / имя пользователя, количество баллов и причину получения подарочных баллов. Вы также можете отправлять баллы анонимно, используя 
-a флаг.

Например:

  Code (Bash)
 give -a 7334 "Nice User" "I love you"
 
 
Этот пример анонимно дает 7334 балла анонимно пользователю с именем «Хороший пользователь» с сообщением «Я люблю тебя».
 
  • Смена паролей

Эта passwd команда работает почти так же, как и одноименная собственная команда Linux. Это поможет вам изменить пароль участника, используя его / ее имя пользователя или идентификатор участника.

Например:

  Code (Bash)
 passwd -u johnDoe newpassword

 
 
  • Каталог и размеры таблиц

directory_sizes - эта команда может пригодиться для быстрого определения размера любого каталога
в системе Composr.

Она выведет для вас хорошо отформатированный список всех каталогов.




 

Команда db_table_sizes выведет табличный список всех таблиц базы данных
в Composr с их соответствующим размером.


Эти команды очень полезны при попытке сократить использование диска.
Например, если вы исчерпали лимит квоты или файлы резервных
копий слишком большие.



 
directory_sizes команда
команда <kbd> directory_sizes </kbd>
Нажмите для увеличения
db_table_sizes команда
 
команда <kbd> db_table_sizes </kbd>
Нажмите для увеличения
 
  • Очистка кешей

Кэширование важно для поддержания производительности в Composr. Однако при тестировании новых изменений вы можете захотеть очистить кешированные значения.
Вы можете использовать clear_cache команду для немедленной очистки всех кешей или, что еще лучше, удалить только определенные кеши, передав список кешей, разделенных запятыми, для очистки.

Например:

 Code (Bash)
 clear_caches comcode_pages,template
 
 
Примечание. Если параметры не указаны, clear_caches, то будет очищен весь кеш.
 
  • Открытие и закрытие сайта

 
Мы можем использовать Commandr и Commandr-fs для управления параметрами конфигурации,
например файлами. 
Все файлы 
/etc прямо соответствуют параметрам конфигурации.

С участием:

  Code (Bash)
 edit /etc/closed



 
 Cообщение о закрытом сайте:
- отредактируйте текст в текстовом поле в пользовательском сообщении и нажмите «Продолжить».

С участием:

 Code (Bash)
 edit /etc/site_closed
 
 


Мы можем закрыть сайт:
- отредактируйте появившееся текстовое поле 
и нажмите «Продолжить».

Альтернатива вышеуказанному:

 Code (Bash)
 echo 1 > /etc/site_closed
 
 
Который сохраняет редактирование напрямую.



 
Редактирование параметров конфигурации
В данном случае параметры закрытого сайта.

Редактирование параметров конфигурации (в данном случае параметры закрытого сайта)

Нажмите для увеличения
 
  • Доступ к системной информации с использованием Commandr / PHP в качестве туннеля

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

Это показывает информацию о процессоре сервера, только для серверов Linux,   
хотя Mac-эквивалент также показан на снимке экрана:      
 
Code (Bash)
 :echo file_get_contents('/proc/cpuinfo');
 
 

Это показывает загрузку ЦП сервера (только для серверов Linux и Mac):

Code (Bash)
 :echo shell_exec('uptime');


Обратите внимание, что начало :необходимо для Commandr, чтобы определить, что ввод будет что-то для PHP.
 
Получение cpuinfo на Mac

Получение cpuinfo на Mac
Нажмите для увеличения
Получение cpuinfo в Linux

Получение cpuinfo в Linux
Нажмите для увеличения











 
Время безотказной работы системы в Linux / Mac:
Время безотказной работы системы в Linux / Mac
Нажмите для увеличения
 
  • Commandrchat (продвинутый уровень)

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

Commandrchat предназначен для того, чтобы администраторы веб-сайтов могли общаться друг с другом и делиться советами, приемами и опытом работы с Composr.

 
  • Скрипты (продвинутый уровень)

Команды могут быть объединены в сценарии и сохранены для последующего использования в bin файловой системе. Их можно выполнить в командной строке Commandr, просто введя имя сценария, или, в качестве альтернативы, можно запланировать выполнение по календарю для запуска в какой-то момент в будущем (возможно, в обычном порядке).
 
  • Массовые действия с использованием Composr

Commandr - это очень эффективный способ автоматизации утомительных задач обслуживания. 
Например, если вы хотите удалить набор изображений и у вас есть их идентификаторы, вы можете выполнить этот код Commandr:

 
Code (Bash)
:require_code('galleries2');
$ids=array(1,2,3,4,5);
foreach ($ids as $id) delete_image($id,true);
  


 
Вставьте все за один раз, а не как отдельные строковые входы. Код просто взаимодействует со стандартными API-интерфейсами Composr.

Смотрите также: