zsh mac os что это
Zsh Vs. Баш в macOS Каталина
С запуском macOS Каталина, помимо множества новинок и функций, Apple введены и Zsh (Z оболочка) на месте Колотить (Борн-опять оболочка). Пользователи, знакомые со скриптами Bash и интерактивными командными строками из терминал, они быстро заметили это изменение. В Терминале предлагается выполнить командную строку, чтобы сделать это переход от баш к зш.
Почему был осуществлен переход от Bash к Zsh?
Проще говоря, речь идет об ограничениях, налагаемых Лицензия на распространение (GNU) для использования Bash.
Bash находится в процессе разработки, достиг версии 5.0. Окончательная версия выпущена в начале января 2019. Тем не менее, Apple используется до MacOS Mojave (выпущен осенью 2018 года) устаревшая версия. Было предпочтительнее Баш НИЧЕГОверсия 2007. Новые версии Bash были выпущены по лицензии GNU General Public License модифицированный (GPLv3), что требует некоторых ограничения и оговорки для поставщиков программного обеспечения.
Баш против. ЗШ
Для пользователей переключение с Bash на Zsh должно быть радостью. Особенно для тех, кто часто пользуется терминалом. Zsh (Z shell) основан на том же языке, что и Bash, но он приносит интересные особенности. Интуитивно понятные командные строки, плагинВездеходы и темы графика.
Помимо команд Bash, в Zsh есть много других специальных команд, и многие из них могут быть настроены пользователем для выполнения некоторых операций. Имя.
— автоматическое завершение командных строк (автозаполнение)
— расширенные переменные
— заменить путь
— интуитивно понятное расширение пути. “/u/lo/b ” идет в «/ usr / local / bin»
— поддержка о-мой-ЗШ для расширенных возможностей
– поддержка тем в терминале
— многие другие, представленные здесь.
О-My-ЗШ это самый популярный фреймворк для Zsh, поставляемый со многими плагинВездеходы и темы включен. Простота установки, настройки и настройки.
Как установить Oh-My-Zsh для Zsh на macOS
Выполните командную строку в Терминале:
После установки oh-my-zsh у вас щедрая библиотека плагины если темы. Кроме того, есть много параметров конфигурации и настройки в зависимости от ваших предпочтений. Все детали найти здесь.
Модуль и утилиты рекомендации: iTerm2 (эмулятор терминала, который заменит терминал), Homebrew и тема POWERLEVEL9K для Zsh (Oh-My-Zsh).
Как мы меняемся default оболочка в macOS Каталина
Если вы не удовлетворены Zsh, вы всегда можете вернуться к Bash через macOS Екатерина. Однако имейте в виду, что это элементарная версия Bash 2007 года выпуска.
Выполните командную строку в Терминале, чтобы вернуться в Bash:
Помимо Bash и Zsh вы также можете активировать другие оболочки в macOS Каталина.
Выполнить в терминале команду cat /etc/shells через которую можно увидеть снаряды, входящие в macOS Каталина.
/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
Настройка ZSH в MacOS
С началом использования MacOS, почти сразу понимаешь, что стандартный терминал не очень-то и удобен.
В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я используем iTerm2.
В MacOS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды:
После перезапуска терминала оболочкой должен быть уже ZSH.
Если попросит начать настройку, то прервём сей процесс, нажав q.
Ручками не нужно переписывать конфиги, пусть это сделает Oh My Szh. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто супер удобным. Установим его, следуя инструкциям с официального сайта.
Переходим в домашний каталог и выполняем:
Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:
Приветствие шелла после установки Oh My ZSH
Это стандартная тема oh-my-zsh под названием robbyrussell (по имени автора). Мы можем поставить любую из тем, которые поставляются с oh-my-zsh. Я, использую Bureau.
Меняем тему в конфиге с помощью переменной ZSH_THEME
Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:
Тема Bureau в шелле
Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.
Тема Agnoster в шелле
Если, увидите кривые символы, то не пугайтесь, всё это происходит из-за некоторых отсутствующих шрифтов в системе.
После перезапуска терминала вы, наконец, сможете узреть нормально работающий терминал.
Для правильной работы темы во встроенном терминале VScode в конфиг нужно добавить:
Oh My Zsh: прокачай свой терминал
Стандартный терминал Unix систем, будь то MacOS или Linux, неплох. И все же, от инструмента, за которым приходится работать каждый день, хочется большего. Ниже представлена версия того, как сделать его более удобным и продуктивным.
Новичкам возможно будет интересно (и полезно):
Знакомьтесь, iTerm2
Чтобы установить iTerm2 вручную: скачайте его с официального сайта, распакуйте скачанный архив и переместите приложение в папку с программами.
Или, если используете Homebrew, установить iTerm2 можно одной командой:
Самый популярный шорткат — быстрое отображение или скрытие iTerm2. Можно сделать чтобы консоль выезжала сверху, как в Quake.
Но фича не работает из коробки, поэтому потребуется выполнить некоторые действия: перейдите в настройки (iTerm2 — Preferences), далее Profiles — Keys — Configure Hotkey Window, хоткей можно указать любой, остальные настройки как на скриншоте ниже.
Далее (там же в Profiles) перейдите в Window, и установите настройки как на скриншоте (или измените по своему усмотрению). За стиль окна отвечает настройка Style.
Можно двигаться дальше.
Мигрируй на Zsh
Zsh она же Z shell — одна из современных командных оболочек Unix. Мало кто знаком и использует все ее функции. Однако это и не требуется — фреймворк Oh My Zsh, который мы установим далее, позволит настраивать ее и кастомизировать с помощью тем и плагинов.
У пользователей MacOS, скорее всего, Zsh уже установлена, если нет — установите с помощью менеджера пакетов Homebrew, а затем сделайте zsh оболочкой по умолчанию.
Установка zsh в Ubuntu и Debian.
Убедиться, что zsh является оболочкой по умолчанию можно следующей командой.
Результат /bin/zsh означает, что все сделано верно.
Далее необходимо перелогиниться. Когда вновь откроете терминал, возможно увидите приветственное сообщение zsh. Ничего не меняйте и выйдите, выбрав q.
Zsh: быстрый старт
Еще до установки Oh My Zsh и плагинов можно оценить мощь Zsh.
Попробуйте ввести следующую команду:
Она вставит в консоль предыдущую команду. Будет полезна, если забыли указать sudo для команды требующей root:
От предыдущей команды можно взять только аргумент.
Вставить в консоль последнюю команду, начинающуюся с указанных символов:
Конструкция похожа на предыдущую, но применима для известной части символов в середине или в конце команды:
Опечатку в последней введенной команде можно исправить так:
А с помощью следующей команды удобно сделать бэкап файла.
Конструкция выше аналогична команде:
Следующая конструкция удалит ранее распакованные файлы. Будет полезна если вы распаковали архив tar.gz не в тот каталог.
Примеры выше, малая доля того, что умеет Zsh. Еще больше возможностей открывается при использовании фреймворка Oh My Zsh.
Установка Oh My Zsh
Oh My Zsh — open source фреймворк, поддерживаемый сообществом. Предназначен для управления настройками Zsh и расширяющий его функционал и за счет плагинов и тем.
Установка через curl
Установка через wget
Установка вручную (загрузите скрипт, затем выполните его)
Oh My Zsh установится в папку
/.oh-my-zsh. Если понадобится удалить Oh My Zsh, не удаляйте папку вручную, а воспользуйтесь специальной командой:
Oh My Zsh в действии
Одно из неудобств консоли — перемещение по папкам. Oh My Zsh расширяет возможности автодополнения по кнопке Tab.
Например, Oh My Zsh исправляет регистр букв. Можно написать:
Затем нажать Tab и команда преобразуется в:
Если с введенных символов начинаются имена нескольких каталогов, по нажатию на Tab будет выведен список уточнений, а при повторном нажатии Tab, стрелками (или последующими нажатиями Tab) можно будет выбрать нужный каталог.
Автодополнение работает для любой части файлов и каталогов. Чтобы перейти в каталог
/Downloads, можно написать:
По нажатию Tab, строка будет преобразована.
Oh My Zsh умеет дополнять имена каталогов по всему пути, а не только по последней его части, например:
По нажатию Tab, строка будет преобразована.
А если добавить в файл конфигурации
/.zshrc часто используемые каталоги в переменную CDPATH, то не нужно будет печатать даже первые буквы имен каталогов.
Выбор темы
Дефолтная тема Oh My Zsh минималистична и хороша, но я предпочитаю Agnoster. Обратите внимание, как информативно выглядит в ней git-репозиторий.
Чтобы установить тему из репозитория откройте файл
/.zshrc, и в поле ZSH_THEME замените значение на имя понравившейся темы.
Чтобы установить внешнюю тему, скачайте ее, а затем переместите в каталог тем
Затем перейдите в настройки iTerm2 — Preferences, далее Profiles — Text и в поле Font выберите скачанный шрифт, например Meslo LG или Droid Sans. Перезапустите терминал, теперь шрифты будут корректно отображаться в выбранной теме.
Выбор цветовой схемы
Цветовые схемы устанавливаются в дополнение к темам, чтобы сделать вид терминала еще привлекательнее, или вместо них — если тему по душе вы еще не подобрали.
Так выглядит мой терминал с установленной темой Agnoster и цветовой схемой Dracula.
Чтобы изменить цветовую схему терминала, скачайте понравившуюся, а затем перейдите в настройки iTerm2 — Preferences, далее Profiles — Color и в поле Color Presets (справа внизу), выберите пункт Import и импортируйте, а затем выберите скачанную тему.
Плагины
Как и в случае с темами, чтобы добавить плагин, нужно прописать его название в файле
/.zshrc, секция plugins. Например, чтобы активировать плагин docker, добавьте «docker» в секцию plugins.
Чтобы установить сторонний плагин, его нужно предварительно скачать и положить в каталог сторонних плагинов
Несколько полезных плагинов из репозитория Oh My Zsh:
npm — добавлят поддержку автодополнения к npm;
vagrant — автодополнения для vagrant, если пользуетесь им;
composer — автодополнения и алиасы;
sudo — если для выполнения команды потребовались права суперпользователя, плагин позволит не возвращаться в начало строки, а нажать два раза Esc, и он добавит sudo в начало команды.
И пара интересных внешних плагинов:
zsh-syntax-highlighting — добавляет подсветку синтаксиса, подсвечивает команду если в написании допущена ошибка;
zsh-autosuggestions — предугадывает команды на основе ранее вводимых.
Алиасы
Алиасы или псевдонимы — это сокращения для длинных команд или даже последовательности команд.
Список текущих алиасов Oh My Zsh можно посмотреть командой:
Свои алиасы можно добавлять в файле
Ссылки
На этом всё. Но вы можете поддержать проект. Даже небольшая сумма поможет нам писать больше полезных статей.
Если статья помогла или понравилась, пожалуйста поделитесь ей в соцсетях.
Как сделать красивую консоль в Mac и Linux
Если у вас OS X, поставьте iTerm2, он лучше стандартного Terminal.app. Если у вас Linux, то у вас наверняка уже есть неплохой терминал, или вы можете самостоятельно поставить любой, который вам нравится. Я вот люблю Sakura. Ещё я обычно меняю цветовую схему. Стандартные чёрные мне не очень нравятся, есть крутая схема Solarized. Как её устанавливать тоже зависит от вашего терминала.
Теперь настроим непосредственно шелл. Шелл — это оболочка, в которой выполняются команды. Он показывает вам так называемое приглашение, оно обычно состоит из имени пользователя, имени компьютера и пути к тому месту, где вы сейчас находитесь. И выполняет команды, которые вы в него вводите. Стандартный шелл выглядит так:
Стандартное приглашение в шелле
Скучновато, правда? Первое, что мы сделаем — сменим оболочку с bash на zsh. Bash — это стандартная оболочка, которая поставляется в комплекте большинства систем. Zsh — это более современная оболочка со множеством плюшек. По сравнению с bash улучшены автодополнение, алиасы, хоткеи. Всё, что может bash, zsh может тоже, так что не вижу причин не переходить. У пользователей OS X zsh уже есть на компьютере, а пользователям Linux, скорее всего, нужно его установить. В Ubuntu и Debian это делается просто:
Установка zsh в Ubuntu и Debian
Пользователи остальных систем наверняка справятся с установкой. Теперь нужно сделать, чтобы zsh был вашей оболочкой по умолчанию, то есть использовался каждый раз, когда вы открываете терминал. Для этого есть команда chsh (change shell):
Ввод пароля при смене шелла
Смена оболочки по умолчанию
Теперь нужно выйти из системы и снова зайти. Когда вы откроете терминал, увидите приветственное сообщение zsh. Он предлагает вам ничего не делать, записать в свои настройки только комментарии, чтобы это сообщение не появлялось в следующий раз или пойти в меню настройки:
Приветствие от zsh
Мы, ничего не делая, выйдем (нажмём q ), потому что знаем секрет. Секрет в том, что не нужно писать длинный конфиг, если вы новый пользователь: частые проблемы и хотелки уже решили другие, и родилась такая замечательная штука — Oh My ZSH. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто офигенным. Установим его, следуя инструкциям с официального сайта:
Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:
Приветствие шелла после установки Oh My ZSH!
Меняем тему в конфиге с помощью переменной ZSH_THEME
Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:
Тема Bureau в шелле
Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.
Тема Agnoster в шелле
А это тема Лёши, можете её взять из github и сохранить в папке
Да и вообще, полистайте список тем и выберите ту, которая вам по душе. Или склейте свою из кусочков понравившихся тем, или даже напишите с нуля! Все темы лежат в папке
iTerm2: модный терминал маковода
Как установить и начать пользоваться.
Опытные технари общаются с компьютером не мышкой и экранным интерфейсом, а с помощью клавиатуры. Когда знаешь, какие команды отдать компьютеру, написать их на клавиатуре намного быстрее, чем ковыряться в меню.
Текстовые команды компьютеру чаще всего дают через командную строку. В Mac OS для этого есть приложение Terminal. И есть его младший брат с наворотами: iTerm2. Вот что он может и в чём смысл.
Кому подходит
✅ iTerm2 подходит опытным тестировщикам, веб-разработчикам и всем, кто проводит много времени в терминале — здесь удобно работать с множеством вкладок, автоматизировать рутинные команды и находить регулярные выражения.
✅ iTerm2 подходит новичкам, которые только знакомятся с командами терминала или изучают систему контроля версий Git для командной работы — визуальное оформление помогает не запутаться в проектах со сложной структурой.
✅ iTerm2 подходит любителям скоростного кодинга — тем, кому приходится писать большие объёмы кода или кто учится это делать. Терминал предлагает программируемые горячие клавиши для ускорения разработки. Ещё на эту тему читайте: горячие клавиши и Vim.
❌ iTerm2 однозначно не подходит тем пользователям, у которых нет времени на его изучение и настройку.
Как установить и настроить
Шаг 1. Перейдите на iterm2.com, скачайте терминал и установите его как обычную маковскую программу. iTerm2 распространяется бесплатно, но к сайту прикручены донаты — по желанию вы можете отблагодарить разработчиков за их труд.
👉 iTerm2 не совместим с Windows, Linux и ранними версиями macOS. Нужна OS X 10.14 или более новая версия.
После скачивания iTerm2 визуально не отличается от стандартного терминала: слева — стандартный терминал; справа — iTerm2. Всё изменится после настройки.
Шаг 2. Устанавливаем оболочку Oh My Zsh — специальное расширение, которое позволяет менять оформление iTerm2. Для установки вам необходимо скопировать следующую строку, вставить её в терминал и нажать на Enter:
После загрузки нажмите «Y», Enter и введите пароль от своего мака — Oh My Zsh заменит стандартную оболочку терминала, установит стандартную тему и включит подсветку синтаксиса. Можно оставить так или полностью изменить оформление.
Ставим оболочку Oh My Zsh в iTerm2.
Шаг 3. Откройте репозиторий Oh My Zsh и посмотрите список тем, встроенных в оболочку по умолчанию, — таких, которые можно изменить одной командой без скачивания дополнительных компонентов. Для примера выберем тему Apple. Открываем iTerm2 и пишем команду для перехода к файлу настройки терминала:
Появится текстовый документ, в котором нужно найти строчку «ZSH_THEME =»Пишем название выбранной темы»». Закрываем файл и перезагружаем iTerm2.
Редактируем файл настройки терминала и устанавливаем тему Apple
После выбора темы можно поменять цветовую схему, контрастность и все цветные элементы синтаксиса. Для этого наведите мышкой на меню → выберите iTerm2 → Preferences → Profiles → Colors. Для изменения цветовой схемы кликните на Colors Presets; для изменения шрифтов перейдите на вкладку Text.
Добавляем к теме «Apple» цветовую схему Solarized Dark
Дальнейшие шаги для тех, кому не подошли стандартные темы Oh My Zsh.
Шаг 4. Установите дополнительные шрифты, которые понадобятся для работы с внешними темами. Чтобы всё настроить — добавьте в iTerm2 такую команду:
/Downloads/
git clone https://github.com/powerline/fonts.git
cd fonts
./install.sh
У внешних тем для iTerm2 есть техническая документация, рекомендованные настройки и шрифты. В некоторых версиях операционной системы внешние темы устанавливаются с дефектом и часть текстовой информации искажается — вместо букв появляются знаки вопроса и неразборчивые символы. Иногда это происходит даже тогда, когда вы полностью соблюдаете прописанные настройки.
Чтобы исправить дефект — откройте вкладку Text и замените рекомендованный шрифт на какой-то другой. Перезапустите терминал и проверьте изменения. Если ничего не поменялось и другие шрифты не работают — придётся менять тему.
Шаг 5. Загрузите менеджер пакетов Homebrew, который предотвращает ошибки при установке внешних тем. Для загрузки менеджера пакетов вставьте команду:
Шаг 6. После установки дополнительных шрифтов и менеджера пакетов в iTerm2 можно загружать внешние темы. Есть несколько способов, и простой выглядит так:
Не все внешние темы получится установить. Иногда они повреждены, не содержат всех загрузочных файлов или их просто не найти на гитхабе.
Как начать пользоваться
iTerm2 можно разделить на множество окон по горизонтали или вертикали и работать сразу в нескольких независимых сессиях.
Правая кнопка мыши → Split Pane Vertically или Split Pane Horizontally
Если случайно закроете терминал, то у вас будет пять секунд на отмену действия — нажимаете комбинацию клавиш Command+ Z, и сессия восстанавливается.
Комбинация Command+Shift + H позволяет посмотреть, кто и когда вставлял в терминал какой-то текст — информация сортируется по объёму и времени копирования. Обычный буфер обмен отслеживает только последнее действие.
Копируем в терминал куски случайного текста и всегда можем найти нужный фрагмент
Можно включить левую боковую панель и упорядочить расположение вкладок — это упрощает навигацию и позволяет видеть несохраненные изменения. Если в какой-то вкладке будут несохранённые изменения, то в боковой панели на ней засветится синий круг. Для большей наглядности вкладки можно раскрасить разным цветом, каждая из которых будет соответствовать своему проекту.
iTerm2 → Preferences → Apperance → Tab bar location → Left. Если вместо Left выбрать значения Top или Botton, то вкладки отобразятся, как в браузере, сверху или снизу окна
Если для проекта понадобятся картинки, то их можно вставить в терминал:
Остаётся прописать команду и путь в выбранной картинке — мы расположили картинку на рабочем столе и сохранили её под названием Test.
Прописываем путь к картинке:
Открываем картинку в терминале:
imgcat Test.jpg Ничего необычного: просто картинка в терминале
iTerm2 может отображать дополнительные параметры вроде состояния батареи, часов, состояния оперативки и другую вспомогательную информацию — это позволяет раскрыть терминал на всю ширину окна и не тратить время на переключение между вкладками. Опция называется Configure Status Bar:
Если изменения не появятся — перезапустите терминал.
Выбираем состояние батареи, дату и время
Раскрываем iTerm2 на всю ширину и можем отслеживать выбранные параметры