Курсовая работа. Знакомство с командной оболочкой zsh и ее возможностями
Скачать 419.28 Kb.
|
1 Оглавление Введение ......................................................................................................... 2 1. Знакомство с командной оболочкой zsh и ее возможностями ........ 3 1.1 Немного информации об оболочках ................................................. 3 1.2 Виды shell-ов ....................................................................................... 3 1.3 История и преимущества оболочки zsh ............................................ 4 2. Установка и настройка zsh .................................................................. 6 2.1 Начало установки ................................................................................ 6 2.2 zsh - в качестве оболочки по умолчанию ......................................... 6 2.3 Настройка оболочки ........................................................................... 8 2.4 Рассматриваем особенности zsh ...................................................... 10 Заключение .................................................................................................. 12 Ссылки на источники ................................................................................. 13 2 Введение В данной работе мы рассмотрим одну из альтернатив командной оболочки bash, а именно командную оболочку zsh. Мы познакомимся с ее особенностями, пошагово разберем установку данной оболочки на Unix - подобную систему, а также проведем небольшую аналогию между bash и zsh. Отметим, что данная работа очень актуальна, ведь многие пользователи системы Linux задаются вопросом о том, какую командную оболочку им лучше всего использовать. Из вышесказанного нетрудно определить цель и задачи, которые нам необходимо поставить и достичь по мере создания данной работы: Цель работы: познакомиться с рассматриваемой нами командной оболочкой. Задачи: 1. Научиться устанавливать zshна Unix - подобную систему. 2. Осуществить правильную настройку новой оболочки. 3. Изучить специфику zsh. 3 1. Знакомство с командной оболочкой zsh и ее возможностями 1.1 Немного информации об оболочках Командная оболочка — это программный продукт, который обеспечивает взаимодействие между пользователем и средой операционной системы Linux, осуществляет выполнение команд и получения результатов их выполнения. [1] С оболочкой пользователь сталкивается сразу же после начала работы с системой. И даже если основная часть работы пользователя проходит в графическом режиме, в окружении интегрированных сред или оконных менеджеров, — окно терминала с приглашением командной строки быстро станет неотъемлемым атрибутом любого десктопа. Ибо именно команды оболочки — самый простой и эффективный путь к выполнению всех операций по управлению файлами, многих задач обработки текста, да и просто запуска любых программ. Наиболее популярной в использовании является оболочка bash, все же остальные оболочки являются, можно сказать, ее дополнением, все они основаны, непосредственно, на этой оболочке. Популярность bashобусловлена в первую очередь своей простотой настройки и полной совместимостью со стандартом. 1.2 Виды shell-ов Большая часть командных оболочек делится на две группы — sh- и csh- совместимые. Отличие данных групп состоит в разном синтаксисе интерпретируемого ими языка, а также в подходе к обработке командных конструкций. 4 1.3 История и преимущества оболочки zsh zsh (или Z-shell) — оболочка из клана sh-совместимых, первоначально разрабатывавшаяся Паулем Фальстадом (Paul Falstad), начиная с 1990 года. В настоящее время Z-shell развивается в рамках самостоятельного проекта сообществом энтузиастов (Zsh Development Group) при координации Петера Стефенсона (Peter Stephenson), являющегося также автором большей части документации проекта. В отличие от bash, прямого (как, впрочем, и косвенного) отношения к GNU zsh не имеет, и распространяется под собственной лицензией BSD-стиля, а, следовательно, является полностью свободной программой. [2] Перечислим преимущества z-shell, и рассмотрим некоторые из них более подробно: 1. авто дополнение командной строки, возможность навигации по ней и редактирования; 2. возможность минимизации ввода за счет использования псевдонимов; 3. поддержка чисел с плавающей точкой; 4. утилита zcalc - удобный калькулятор, позволяющий осуществлять вычисления, не покидая терминала; В отличие от обычного дополнения клавишей tab в оболочке bash, zsh идет дальше — и после вывода таковых в ответ на последующие нажатия клавиши табулятора начинает автоматический их перебор. Для zsh существует возможность развертывания путей в сокращенном наборе. Так, чтобы просмотреть содержимое каталога /home/data/soft/zenwalk/, в командной строке достаточно набрать $ ls /h/d/s/ 5 Оболочка zsh дополняется возможностью определения псевдонимов для командных конструкций — перенаправлении ввода/вывода и командных конвейеров в форме опции -g (от global aliases). Мы знаем, что для обеспечения постраничного вывода любой команды (например, ls) вывод этот нужно передать по конвейеру (pipe) программе-pager’у (less или more). придется каждый раз вводить: $ ls | less zsh позволяет использовать глобальные псевдонимы. Определяем, что опция -g со значением L есть псевдоним для конвейера ‘| less’: $ alias -g L='| less' после чего имеем возможность, указывая ее после команды, требующей постраничного ввода, именно его и получать: $ ls -g L Создадим еще один, обычный, псевдоним для команды ls с этой опцией, например: $ alias lsp='ls -g L' Теперь, что воспользоваться функцией постраничного вывода достаточно ввести команду: Lsp 6 2. Установка и настройка zsh 2.1 Начало установки В дистрибутивах Debian и Ubuntu Linux zsh доступен в репозиториях пакетов по умолчанию и может быть установлен с использованием стандартной команды: sudo apt install zsh (рис 1) 2.2 zsh - в качестве оболочки по умолчанию В большинстве систем Linux можно установить оболочку zsh по умолчанию, используя команду $ chsh -s shell [username], где username - имя пользователя; shell - путь к двоичному файлу zsh; Путь должен быть указан в /etc/shells , который содержит список разрешенных оболочек для использования с chsh. 7 (рис 2) После ввода данной команды необходимо выйти из системы и снова зайти. Откроем терминал и увидим приветственное сообщение zsh (рис 3) 8 Здесь мы можем начинать ручную настройку конфигурации нашей оболочки. Но данном случае мы воспользуемся готовым решением. Проверить, установилась ли оболочка по умолчанию можно с помощью команды echo $SHELL (рис 4) 2.3 Настройка оболочки Oh My ZSH - это набор плагинов и настроек, которые решают самые популярные задачи рядового пользователя. Прежде чем воспользоваться установкой Oh My ZSH, требуется установить git, который, собственно, позволить нам скачать Oh My ZSH [3] sudo apt install git (предварительно выйдем из окна приглашения zsh, нажав клавишу ‘q’. После установки git-а, переходим к установки нашего решения. Для этого осуществляем скачивание с сайта: [4] curl -L https://raw.github.com/robbyrussell/oh-my- zsh/master/tools/install.sh | sh 9 Установка завершилась успешно, терминал выводит приглашение (рис 5) Перезапускаем терминал и убеждаемся в том, что установка выполнена (рис 6) 10 2.4 Рассматриваем особенности zsh Одно из самых главных отличий оболочки zsh от bash заключается в более продвинутой и интеллектуальной системе навигации в командной строке. Данное отличие, несомненно, стоит охарактеризовать как преимущество zsh над bash. Одна из главных проблем консоли состоит в том, что ее неудобно использовать для перемещения по каталогам. Особенно если вложенных каталогов много, они имеют длинные имена, а еще хуже — похожие имена. В этом случае система авто дополнения с помощью кнопки Tab помогает плохо и все, что остается, — это печатать имена каталогов руками. ZSH упрощает навигацию. Во-первых, он умеет исправлять регистр букв, поэтому можно начать печатать нечто вроде $ cd /do Затем нажать Tab и получить это: $ cd /Downloads Во-вторых, система авто дополнения имен каталогов ZSH намного развитее своего аналога из bash. Если ZSH обнаружит, что с введенных тобой символов начинаются имена сразу нескольких каталогов, он не будет предупреждать, а затем выводить список каталогов, заставляя тебя уточнять запрос, а сразу выведет список и позволит выбрать нужный каталог с помощью Tab или стрелок. (рис 7) 11 ( рис 7) В-третьих, авто дополнение работает не только для начала имени каталога/файла, но и для любой его части. Чтобы перейти в каталог /Downloads, можно набрать load и нажать Tab. Наконец, в-четвертых, ZSH умеет дополнять имена каталогов по всему пути, а не только в последней его части. Можно набрать Затем нажать Tab и получить это: $ cd /usr/share/zsh Oh My ZSH очень удобное расширение терминала. Является мощным инструментом, а также обладает одним из лучших и удобных систем авто дополнений. Для zsh существует огромное количество тем, на любой вкус, а так-же любой желающий может написать свою. 12 Заключение Изучая вопрос о том, какая же оболочка больше подходит тому или иному пользователю, стоит отметить, что рассматриваемые нами оболочки zsh и bash очень схожи между собой. И это очевидно, ведь в основу структуры zsh была заложена структура работы bash. Поэтому выделить четкие границы отличий между двумя оболочками достаточно сложно. Можно сказать, что zsh — это незначительно усовершенствованный аналог bash, главным преимуществом которого является возможность использования интеллектуального “автокомплита” (авто дополнения). Из внешних отличий, не относящихся к работе оболочки, следует упомянуть, что zsh не имеет никакого отношения к GNU’s Not UNIX (GNU), а значит распространяется под собственной лицензией BSD-стиля. В данной работе мы достигли необходимый целей, а именно ● Изучили особенности zsh; ● Научились устанавливать оболочку и осуществлять правильную настройку. 13 Ссылки на источники 1. http://citforum.ru/programming/shell/index.shtml. Программирование на Shell (UNIX). А. Соловьев. 2. http://zshwiki.org/. About zsh. 2002-2019. 3. https://github.com/robbyrussell/oh-my-zsh. GitHab. 4. https://github.com/. GitHab. |