Управление файлами cookie, которые используются для рекламы, таких как персонализация рекламы, ремаркетинг и анализ эффективности рекламы.
2.11.16. Полезные возможности консоли
В консоли существует множество полезных возможностей, например горячие клавиши или универсальные аргументы, которые используются для более гибкого применения команд.
Настройка оболочки Bash
В оболочке Bash присутствует два файла, которые позволяют настроить используемую в CLI оболочку в зависимости от потребностей. К примеру, создать определённые алиасы при подключении или установить нужные параметры, что очень полезно при частой работе. Файлы:
.bash_profile— файл, обрабатываемый автоматически при подключении к консоли. Так как обычно все созданные параметры оболочки помещаются в.bashrc, то в этот файл следует поместить вызов файла.bashrcс помощью такого кода:if [ -f ~/.bashrc ]; then . ~/.bashrc fi.bashrc— файл, обрабатываемый для неавторизируемых подключений, к примеру при подключении по WebSSH. Чаще всего данный файл вызывается со стороны.bash_profile, чтобы создать одинаковые условия работы при подключении с авторизацией или без. В файл помещаются все параметры и команды, которые нужно выполнить после подключения.
Горячие клавиши
- Tab — автозавершение, обычно используется для автозавершения имени каталога или файла, если файлов с подобным именем несколько, то двойное нажатие выведет список подходящих файлов.
- Ctrl+R — интерактивный поиск по ранее выполненным командам.
- Ctrl+Alt — перемещение в начало команды.
- Ctrl+E — перемещение в конец команды.
- Ctrl+D — выйти из текущего подключения/командной консоли.
Полезные команды
Навигация и работа с каталогами:
pwd— вывод пути к активному каталогу.cd— смена активного каталога.ls— вывод списка файлов и каталогов в активном каталоге или по указанному пути.ll— то же, что иls -l, вывод файлов и каталогов в виде удобочитаемого списка.mkdir— создание каталога.rm— удаление файла или каталога.touch— обновление даты последнего изменения файла на текущее. Также создаёт файл, если в качестве параметра указан несуществующий.
Просмотр и работа с файлами:
cat— вывод содержимого файла.head— вывод первых нескольких строк содержимого файла.tail— вывод последних нескольких строк содержимого файла, выводит новые строки в режиме реального времени при дополнении файла.less— постраничный просмотр файла или вывода команды. Для выхода нужно нажать Q.nano,vi,vim— текстовые редакторы в терминале.file— определяет тип файла. Пример:file index.php.diff— сравнение двух файлов, в выводе команды будет только разница между файлами.
Поиск и анализ данных:
grep— поиск файлов и каталогов по содержимому. Подробнее см. Поиск файлов и каталогов через консоль.find— поиск файлов и каталогов. Подробнее см. Поиск файлов и каталогов через консоль.du— анализ дискового пространства, которое занимают файлы и каталоги. Примеры:du -sh *илиdu -h –max-depth=1.wc— подсчёт количества строк, слов и символов. Пример:wc -l error.log.sort— сортировка строк файла. Пример:sort file.txt.uniq— удаление повторяющихся строк. Пример:sort file.txt | uniq -c.cut— извлечение столбцов по разделителю. Пример:cut -d":" -f1 ./.htpasswd.awk— построчная обработка текстовых данных. Пример:awk '{print $1, $3}' file.txt.sed— потоковый редактор для замены текста, часто используется совместно сawk. Пример:sed 's/error/warning/g' file.log.ncdu— утилита для анализа дискового пространства и управления файлами и каталогами в интерактивном режиме.
Системная информация и процессы:
ps— вывод списка активных процессов пользователя. Пример вывода подробной информации всех запущенных процессов и фильтрация по подстрокеphp:ps aux | grep php.strace— трассировка системных вызовов программы, что полезно для проведения анализа и отладки. Пример:strace -e openat,connect ./script.sh— отследить обращения к файлам и сети.env— вывод всех переменных окружения.which— вывод пути к исполняемому файлу. Пример:which php.history— вывод истории выполненных команд.date— текущая дата и время. Пример:date "+%d-%m-%Y %H:%M:%S".man— вывод информации о команде и её возможностях.xargs— использование вывода предыдущей команды в качестве аргумента для следующей. Пример:command1 | xargs command2.
Архивирование и сжатие:
tar— создание и распаковка архивов.tar,.tar.gz,.tar.bz2и др. Подробнее см. Создание, просмотр, тестирование и распаковка архива.gzip— создание и распаковка архивов.gz. Подробнее см. Создание, просмотр, тестирование и распаковка архива.zipиunzip— создание и распаковка архивов.zip. Подробнее см. Создание, просмотр, тестирование и распаковка архива.
Передача файлов:
scp— копирование файлов и каталогов между локальным и удалённым сервером по защищённому SSH-соединению. Пример:scp file.txt user@host:/path/.rsync— синхронизация файлов и каталогов между локальным и удалённым сервером. Пример:rsync -avz ./public_html/ backup@remote:/backup/. См. также Создание и восстановление копии файлов сайта с помощью rsync.
Работа с сетью:
curl— отправка HTTP-запросов и проверка доступности URL. Пример:curl -I https://example.com.wget— загрузка файлов по URL, имеет гораздо меньше возможностей, по сравнению сcurl.
Работа с CMS:
wp— утилита для работы с сайтами на WordPress. Подробнее см. Утилита WP-CLI.drush— отдельно устанавливаемая утилита для управления сайтами на Drupal.composer— консольный менеджер зависимостей для PHP. Подробнее см. Работа с Composer.artisan— консольный интерфейс для работы с фреймворком Laravel, который идёт с ним в комплекте. Подробнее см. Утилита Artisan.
Аргументы
~/— означает каталог текущего пользователя, на хостинге это/home/user/, гдеuserэто название хостинг-аккаунта.>— сохранение вывода команды в файл с заменой текущего содержимого файла. Перенаправление вывода имеет больше возможностей, чем запись данных в файл, подробную информацию о них можно найти в сети.>>— сохранение вывода команды в файл в дополнение к текущему содержимому файла. Перенаправление вывода имеет больше возможностей, чем запись данных в файл, подробную информацию о них можно найти в сети.!!— подстановка предыдущей команды.!*— подстановка ключа предыдущей команды.!$— подстановка последнего аргумента предыдущей команды.!abc— подстановка ранее выполненной команды, которая начинается наabc.!?abc?— подстановка последней ранее выполненной команды, в которой содержится текстabc.example.file{,.bak}— сокращение двух строк до одной, если во второй строке используется тот же текст, что и в первой, но с окончанием.bak. Например, это удобно при создании временной копии файлаcp config.php{,.bak}.
Последовательности
;— команды, разделённые этим символом, выполняются последовательно, следующая команда выполняется независимо от результата выполнения предыдущей.&&— команды, разделённые этим символом, выполняются последовательно, но следующая команда будет выполнена только в том случае, если предыдущая команда была выполнена без ошибок. Символ является подобием логического условия «И (AND)».||— команды, разделённые этим символом, выполняются последовательно, но следующая команда будет выполнена только в том случае, если выполнение предыдущей команды завершилось ошибкой. Символ является подобием логического условия «ИЛИ (OR)».
Примеры
Внимание!
Перед выполнением потенциально опасных команд создавайте резервную копию всего хостинг-аккаунта, чтобы иметь возможность при необходимости вернуть файлы.Удаление файлов с определённым текстом:
grep -lr 'Example' ~/folder | xargs rm -f --
Example— искомый текст в файлах.folder— целевой каталог, в котором будет выполняться поиск.
(1)
Комментарии