Zsh kali linux настройка

Содержание
  1. Zsh установка и настройка
  2. Содержание
  3. Установка zsh, oh-my-zsh, fast-syntax-highlighting, zsh-autosuggestions.
  4. Настройка.
  5. Делаем Linux терминал красивым и удобным
  6. Добавляем функциональность
  7. Командная оболочка
  8. Настройка Zsh
  9. Настраиваем внешний вид
  10. Zsh (Русский)
  11. Contents
  12. Установка
  13. Первоначальная настройка
  14. Установка Zsh в качестве оболочки по умолчанию
  15. Файлы Запуска/Завершения
  16. Настройка Zsh
  17. Простой .zshrc
  18. Настройка переменной $PATH
  19. Автозавершение команд
  20. Обработчик неизвестных команд
  21. Игнорирование повторяющихся строк в истории
  22. Команда ttyctl
  23. Назначение клавиш
  24. Назначение клавиш в оболочке
  25. Назначение клавиши в ncurses
  26. Альтернативный путь назначения клавиш в ncurses
  27. Горячие клавиши в файловом менеджере
  28. История поиска
  29. Настройка строки приглашения (PROMPT)
  30. Настройка командной строки (PROMPT)
  31. Цвета
  32. Цветной вывод команд
  33. Пример
  34. Стек Каталогов
  35. Команда Help
  36. Подсветка синтаксиса как в Fish
  37. Примеры файла .zshrc
  38. Фреймворки настроек
  39. Автозапуск приложений
  40. Постоянный rehash
  41. Функции
  42. Распаковка архива
  43. Упаковка в архив
  44. Удаление
  45. Смотрите также

Zsh установка и настройка

/.zshrc , конечный результат примерно такой. Рекомендую установить и использовать терминал urxvt о настройке которого я писал в прошлом посте.

Содержание

Установка zsh, oh-my-zsh, fast-syntax-highlighting, zsh-autosuggestions.

  • oh-my-zsh: надстройка над zsh.
  • fast-syntax-highlighting: подсветка синтаксиса.
  • zsh-autosuggestions: автодополнение.

Переключение шелла на zsh: chsh -s /usr/bin/zsh , обратно на bash(при необходимости): chsh -s /usr/bin/bash .

Настройка.

Мой конфиг .zshrc, необходимо сохранить в домашнюю директорию

/.zshrc , если файл существует замените.

Так как oh-my-zsh установлен через yay, то строка ZSH=/usr/share/oh-my-zsh/ идет от корня, это косается и плагинов.

Тема оформления строки приветствия задается в данной строке ZSH_THEME=»af-magic» . Сами темы можно выбрать тут.

Плагинов из набора oh-my-zsh полно, но я их не использую, вот тут они прописываются.

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

Тут задаем дерикторию кэша и условие проверки.

Экспорт путей со скриптами и бинарниками.

Экспорт различных переменных.

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

Данный блок не обязателен, отвечает за fzf поиск.

В момент набора и появления автодополнения можно перемещаться по словам Ctrl+стрелка вправо, а просто стрелка вправо прыжок в конец подсвеченной строки.

Вот собственно и все, немного пробежался по этой теме.

Источник

Делаем Linux терминал красивым и удобным

Добавляем функциональность

Командная оболочка

Большинство дистрибутивов поставляется со встроенным Bash. Используя дополнения можно сделать из него все что захотите, но гораздо проще этого добиться с Zsh. Почему?

Настройка Zsh

Для начала, установим Zsh (если он уже установлен, например, как в Manjaro, можете пропустить этот пункт):

Когда вам предложат установить Zsh как оболочка по-умолчанию, нажмите Y , чтоб подтвердить.

Oh-My-Zsh — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала. Установим его:

Подсветка синтаксиса. Гораздо проще ориентироваться по содержимому терминала, когда разные части команд подсвечены разными цветами. Например, директории будут подчеркиваться, а команды — выделяться цветом, отличным от обычного текста. Установим плагин zsh-syntax-highlighting :

Чтоб плагин заработал, его надо подключить.

/.zshrc меняем строку с plugins= :

Если такой строки нет — добавьте её.

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

Настраиваем внешний вид

Скачиваем и добавляем в систему шрифт JetBrains Mono Nerd (c иконками):
Выберитеодин из списка, в папке шрифт/complete выберите шрифт без «Windows Compatible», с окончанием «Mono».

Подключаем шрифт и тему.

Если в файле эти строки уже есть — замените их.

Цвета. Важная часть оформления терминала — цветовая схема. Я перебрал много разных схем, редактировал их, остановился на Monokai Dark. Не режет глаза, но при этом приятная и яркая. Список цветов:

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

Запускаем конфигурацию темы: p10k configure .
Настройте тему, выбирая варианты отображения, которые вам больше нравятся.

Финальный штрих — меняем конфиг темы и заменяем встроенные цвета.

Читайте также:  Orient nc 3u2pe драйвер для windows 10

Если в файле эти строки уже есть — замените их. Коды цветов можно получить командой

    Отображение только текущей директории:

Источник

Zsh (Русский)

Zsh является мощной современной оболочкой, которая работает как в интерактивном режиме, так и в качестве интерпретатора языка сценариев. Он совместим с bash (не по умолчанию, только в режиме emulate sh ), но имеет преимущества, такие как улучшенное завершение и подстановка.

Еще больше причин, по которым стоит использовать Zsh, перечислено в Zsh FAQ EN.

Contents

Установка

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

Установите пакет zsh . Чтобы значительно расширить возможности автодополнения команд, установите также пакет zsh-completions .

Первоначальная настройка

Убедитесь, что Zsh был установлен правильно, выполнив следующую команду в терминале:

После этого вы должны увидеть скрипт zsh-newuser-install, который проведет вас через некоторые основные настройки. Если вы хотите пропустить первичную настройку, нажмите q . Если скрипт не запустился, вы можете вызвать его вручную:

Установка Zsh в качестве оболочки по умолчанию

/.zshrc (например, приглашение командной строки и псевдонимы), а также из

Файлы Запуска/Завершения

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

/etc/zsh/zshenv Используется для установки общесистемных переменных environment variables (Русский); Он не должен содержать команд, которые производят вывод, или предполагает, что shell подключен к tty. Этот файл всегда будет источником, это нельзя переопределить. $ZDOTDIR/.zshenv Используется для установки переменных среды пользователя; Он не должен содержать команд, которые производят вывод, или предполагает, что shell подключен к tty. Этот файл всегда будет источником. /etc/zsh/zprofile Используется для выполнения команд при запуске, будет вызван при запуске как login shell. Обратите внимание, что в Arch Linux по умолчанию в нем содержится одна строка, в которой источником является /etc/profile . /etc/profile Этот файл должен быть загружен всеми Bourne-совместимыми оболочками при входе в систему: он устанавливает $PATH и другие переменные окружения и специфичные для приложения ( /etc/profile.d/*.sh ) при входе в систему. $ZDOTDIR/.zprofile Используется для выполнения пользовательских команд при запуске, будет вызван при запуске как login shell. /etc/zsh/zshrc Используется для настройки интерактивной конфигурации оболочки и выполнения команд, будет вызван при запуске как interactive shell. $ZDOTDIR/.zshrc Используется для настройки интерактивной конфигурации пользователя и выполнения команд, будет вызван при запуске как interactive shell. /etc/zsh/zlogin Используется для выполнения команд при завершении прогресса инициализации, будет вызван при запуске как login shell. $ZDOTDIR/.zlogin Используется для выполнения пользовательских команд при завершении начального прогресса, будет вызван при запуске как login shell. $ZDOTDIR/.zlogout Будет получен, когда login shell завершится. /etc/zsh/zlogout Будет получен, когда login shell завершится.

Настройка Zsh

Хотя Zsh может использоваться “из коробки”, он настроен не так, как хотело бы большинство пользователей. Из-за наличия огромных возможностей настройки, доступных в Zsh, этот процесс может оказаться сложным и трудоемким.

Простой .zshrc

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

Вот простой .zshrc :

Настройка переменной $PATH

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

/.zshenv следующие строки:

Смотрите также примечание в разделе #Фреймворки настроек.

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

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

Настройки выше включают в себя также ssh/scp/sftp завершения хостов, но для того, чтобы эта функция работала, пользователи должны предотвратить SSH от хеширования хостов имён в

/.ssh/known_hosts где-то еще, так что ssh создаст новый с un-hashed хостами (ранее известные хосты, таким образом, будут утеряны). Для получения более подробной информации смотрите тут кэшированные-хосты.

Для автозавершения с использованием клавиши-стрелки, добавьте следующие строки в:

Для активации меню нажмите TAB дважды.

Для автозавершения командной строки для алиасов (псевдонимов), добавьте следующее:

Читайте также:  Gcc для windows это

Позволяем разворачивать сокращенный ввод, к примеру cd /u/sh в /usr/share

Обработчик неизвестных команд

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

Чтобы включить хук, нужно его прочитать. Например, добавьте с файл .zshrc следующую строку:

Игнорирование повторяющихся строк в истории

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

Чтобы освободить историю от уже созданных дубликатов, запустите:

Команда ttyctl

[1] описывает ttyctl команды в Zsh. Это можно применить для «замораживания / размораживания» терминала. Многие программы изменяют состояние терминала, и часто не восстанавливают настройки терминала нормально при выходе. Чтобы избежать необходимости вручную сбрасывать терминал, используйте следующее:

Назначение клавиш

Zsh не использует Readline, вместо этого он использует свой собственный и более мощный ZLE. Т.е. не читает /etc/inputrc или

/.inputrc . Zle имеет emacs режим и vi режим. По умолчанию, он пытается взять клавиши emacs или vi из переменной среды $EDITOR . Если она пуста, то по умолчанию будет Emacs. Измните это bindkey -e или bindkey -v соответственно в режиме Emacs или режиме VI.

Назначение клавиш в оболочке

Настраиваем нормальное поведение клавиш (не как в vi и emacs). Для этого в

/.zshrc добавьте следующее:

Назначение клавиши в ncurses

Bind a ncurses application to a keystoke, but it will not accept interaction. Use BUFFER variable to make it work. The following example lets users open ncmpcpp using Alt+\ :

Альтернативный путь назначения клавиш в ncurses

Этот метод будет содержать всё, что вы ввели в строку перед вызовом приложения

Горячие клавиши в файловом менеджере

Могут пригодится настройки клавиш использующиеся в графическом файловом менеджере. Первая комбинация показывает историю каталогов (Alt + Left), вторая позволяет пользователю перейти в родительский каталог (Alt + Up). Они также отображают содержимое каталогов.

История поиска

Добавьте эти строки в .zshrc

Doing this, only past commands beginning with the current input would have been shown.

Настройка строки приглашения (PROMPT)

Существует быстрый и легкий способ создать цветное приглашение в Zsh. Убедитесь что prompt установлен в autoload в файле .zshrc . Это может быть сделано путем добавления этих строк:

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

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

Например, чтобы использовать цветовую схему bigfade , введите:

Чтобы использовать цветовую схему с заданным цветом (если доступен в теме), введите:

Настройка командной строки (PROMPT)

В отличие от bash zsh имеет два промта — левый и правый. Правый промт исчезает при вводе длинных команд, что делает его очень удобным для отображения не самой полезной информации, типа времени или текущего каталога. Промты настраиваются с помощью переменных PROMPT (левый) и RPROMPT (правый):

export PROMPT=’%n@%m> ‘ export RPROMPT='[%

Некоторые из специальных последовательностей, которые можно в них использовать: Последовательность — Описание %n — Имя пользователя %m — Имя компьютера (до первой точки) %M — Полное имя компьютера %

— Путь к текущему каталогу относительно домашнего %d — Полный путь к текущей директории ($PWD) %T — Время в формате HH:MM %* — Время в формате HH:MM:SS %D — Дата в формате YY-MM-DD %B, %b — Начало и конец выделения жирным

Цвета

Zsh устанавливает цвета иначе, чем Bash. Добавьте autoload -U colors && colors до PROMPT= в .zshrc чтобы воспользоваться. Usually you will want to put these inside % < [. ] %>so the cursor does not move.

$fg[color] будет установлен цвет текста (значения, подставляемые вместо “color”, к примеру: red, green, blue, и т.д.. — по умолчанию установлены в любом формате до текста)

Команда Описание
%F [. ] %f фактически то же самое, что и предыдущий, но с меньшим набором. Можно также вставить префикс с номером F.
$fg_no_bold[color] будет использоваться не толстый текст с заданным цветом.
$fg_bold[color] будет использоваться толстый текст с заданным цветом.
$reset_color сбросит цвет текста, на цвет по умолчанию. Не сбрасывает толщину текста. Используйте %b для отмены утолщения. Saves typing if it’s just %f though.
%K [. ] %k устанавливает цвет фона. Того же цвета, как цвет без текста полужирным. Prefixing with any single-digit number makes the bg black.
Возможные значения цвета
black или 0 red или 1
green или 2 yellow или 3
blue или 4 magenta или 5
cyan или 6 white или 7

Цветной вывод команд

Раскрашивание вывода команд при помощи скрипта grc. Поставьте пакет grc (доступен для установки из репозитория [community]) И добавьте следующие строки в ваш

Пример

Это пример двустороннего промта:

А вот как оно будет отображаться:

Стек Каталогов

Zsh можно настроить, чтобы он помнил DIRSTACKSIZE (последние посещённые каталоги). Это пригодится для более быстрой работы с cd. Вам нужно добавить несколько строк, в файл настройки:

Для вывода стека директорий. Используйте cd — чтобы вернуться к посещённому каталогу. Используйте автозавершение (нажав TAB ) после тире.

Команда Help

В отличие от bash, zsh не позволяет использовать встроенный в help команду для автодополнения. Чтобы использовать help в zsh, добавьте следующие строки в ваш

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

Fish обеспечивает очень мощную подсветку синтаксиса. Для использования в zsh, вы можете установить zsh-syntax-highlighting из официального репозитория и обязательно добавьте в ваш

Примеры файла .zshrc

  • Пакет grml-zsh-config , доступный в официальном репозитории взятый с https://grml.org/zsh содержит zshrc файл, который включает в себя множество настроек для Zshell. Эта настройка используется по умолчанию для ежемесячного ISO релиза.
  • Базовая настройка с динамической строкой приглашения (Prompt) и заголовком окна / Hardinfo =>https://github.com/MrElendig/dotfiles-alice/blob/master/.zshrc;
  • https://github.com/slashbeast/things/blob/master/configs/DOTzshrc [устаревшая ссылка 2020-08-06] — zshrc с несколькими функциями, — смотрите комментарии в файле. Известные особенности: подтверждение выключения, если пользователь запустил poweroff, а также запрос подтверждения на reboot или hibernate, поддержка GIT в Prompt (сделано без vcsinfo), завершение по TAB с меню, вывод текущей выполняемой команды в заголовке окна, и многое другое.

Фреймворки настроек

  • oh-my-zsh управляемый сообществом, популярный фреймворк для настройки вашего Zsh. Он поставляется в комплекте с тонной полезных функций, помощников, плагинов, тем.
  • Prezto — мгновенно прекрасный Zsh (доступен в prezto-gitAUR ) настроенный фреймворк Zsh. Он поставляется с модулями, разумно расширяющих среду интерфейса командной строки (по умолчанию), псевдонимами (алиасами), функциями, атодополнением, и темами Prompt.
  • Antigen (дступен в antigen-gitAUR ) — менеджер плагинов для zsh, вдохновлённый oh-my-zsh и vundle.

Автозапуск приложений

Zsh всегда выполняет /etc/zsh/zshenv и $ZDOTDIR/.zshenv так что не раздувайте эти файлы.

При входе в оболочку, читаются команды из /etc/profile а потом $ZDOTDIR/.zprofile . Затем, если оболочка является интерактивной, команды читаются из /etc/zsh/zshrc а потом $ZDOTDIR/.zshrc . Наконец, если в оболочку выполнен вход, читаются /etc/zsh/zlogin и $ZDOTDIR/.zlogin .

Смотрите также секцию STARTUP/SHUTDOWN FILES в zsh(1) .

Постоянный rehash

Обычно compinit не находит новые исполняемые файлы в $PATH. Например после установки нового пакета, файлы в /usr/bin не сразу будут включены в автодополнение. Чтобы включить их в работу, выполните:

‘rehash’ может выполняться автоматически. Включите его в вашем zshrc :

Функции

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

Распаковка архива

Чтобы распаковать архив не указывая тип распаковщика и его аркументы, а выполнив всего лишь команду вида ex имя_архива.bz2 Добавьте следующий код в

Упаковка в архив

Упаковка в архив командой pk 7z /что/мы/пакуем имя_файла.7z — при этом архив будет в Домашней папке.

Удаление

Измените оболочку по умолчанию перед удалением пакета zsh .

Запустите следующую команду:

Где user — имя пользователя.

Используйте эту команду для каждого пользователя с установленной оболочкой zsh (в том числе и root при необходимости). После, удалите пакет zsh .

Кроме того, изменить оболочку по умолчанию обратно в Bash, можно редактируя /etc/passwd от root.

Например, изменить следующие:

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

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

Источник

Читайте также:  Vera crypt mac os
Оцените статью