CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
11.02.2012

Последние комментарии

Нужны ли Linux'у пользователи? (277)
24 Декабрь, 23:02
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 Декабрь, 22:53
Kubuntu Feisty (15)
24 Декабрь, 18:42
Один на один с Windows XP (3758)
24 Декабрь, 11:46

Каталог софта

Desktop
Internet
Internet-серверы
Безопасность
Бизнес/Офис
Игры
Мультимедиа
Наука
Операционные системы
Программирование
СУБД
Создание веб-сайтов
Утилиты

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Заметки :: Блогометки :: Приложения

Заметки :: Блогометки :: Debian Day

ZSH: действительно хорошая замена BASH

http://beshenov.ru

Оригинал: «zsh: a REALLY nice alternative for bash», 18 июня 2008 г.

После многих лет работы с ZSH вместо BASH, я никак не могу понять, почему еще не все перешли на ZSH. Это полноценная оболочка, которая обязательно облегчит вашу жизнь — только попробуйте.

Для начала ее нужно установить (а то!). В APT просто сделайте

$ sudo apt-get install zsh

и все должно настроиться. Можно использовать пакет zsh-beta, но он периодически падает. ZSH есть во всех репозитариях Debian и Ubuntu.

Для начала можно просто напечатать zsh, но вы не особо порадуетесь результату. Давайте сначала настроим оболочку под себя. Создадим в домашней директории файл .zshrc с примерно таким содержанием (обратите внимание на закоментированные строки и попробуйте их): zshrc.txt.

(В тестовой или нестабильной ветке Debian, если вы запустите ZSH без .zshrc, то будет предложен диалог настроек.)

Теперь запустим zsh. Если видите другое приглашение (особенно если не закоментировали соответствующие строки в примере .zshrc), то программа работает. Посмотрим, что можно с ней делать.

Первый пример. Пусть вы исполняете длинную команду (cat /etc/mailcap | grep "^audio" | sed s/mplayer/gmplayer) и забыли синтаксис sed. Просто переместите курсор к «sed» и нажмите Alt-H — вы получите страницу руководства sed, по закрытию которой можно продолжить набирать команду.

Второй пример. Вы соединились с удаленной системой через SSH. Вы хотите использовать опцию «X11 forwarding», но не помните, как. Напечатайте «ssh -» и нажмите Tab — в ZSH работает не только дополнение файлов, но и параметров. Проверьте с какой-нибудь командой, какую хотите использовать.

Третий пример. У вас есть ключ SSH для удаленной системы, и вы хотите копировать оттуда файл, используя SCP. Однако вы забыли, где именно этот файл находится. Напечатайте «scp user@remotehost:/home/myuser/myf» и нажмите Tab — ZSH дополнит имя удленного файла! (Для этого нужно иметь ключ RSA/DSA в удаленной системе.)

Четвертый пример. Вы хотите установить пакет Debian, но не помните его имя полностью (или лень печатать). Просто напишите «apt-get install mysql-client» и нажмите Tab — ZSH дополнит имя пакета. Если вариантов несколько, то они будут перечислены. Ну, достаточно примеров с автодополнением.

Пятый пример. Вы использовали вчера дли-и-и-и-инную команду, и снова ее печатать вам лень. И вы не хотите пролистывать стрелками журнал до появления команды. Вместо этого просто напечатайте начало команды и нажмите Alt-P. ZSH дополнит строчку до команды из журнала. Можете продолжить нажимать Alt-P и переходить к предыдущим записям (если упустили нужную, то Alt-N переходит к следующей).

Последний пример. Вы написали apt-gey install foo bar foo2 bar2 foo3 bar3 foo4 bar4 … foo239 bar239 и нажали Enter... #$@! Команды apt-gey не существует! Вместо того, чтобы нажимать и Home, а потом исправлять «gey» на «get», можно просто использовать ^gey^get — это комбинация для повторения прошлой команды с заменой «gey» на «get».

Если вам понравилась ZSH, и вы хотите использовать ее как оболочку по умолчанию — запустите команду chsh и укажите /usr/bin/zsh.

Пользуйтесь!




Комментарии

аноним, Срд 16 Июл 2008 18:04:55:
погуглил и нашёл, как сделать автодоплнение полным. Нужно было кое-что добавить, чтобы автодолнение стало полным. Признаю свою неправоту.
аноним, Срд 16 Июл 2008 17:17:13:
поциент не осилил автодополнения в zsh, так и запишем
аноним, Птн 11 Июл 2008 21:41:46:
плохо, что у zsh автодополнение в отличие от bash не полное, т.е. автодополнение заканчивается только на первом словом. Так что не надо ляля про автодополнение!
Шерлокнимус, Птн 11 Июл 2008 03:34:39:
Тоже на счет скриптов интересно, могу предположить, что раз на него не перешли полностью, то значит различия имеются, но это всего лишь дедуктивный метод.

ZSH рулит! В баше комлецию надо настраивать, а тут все работает сразу!
аноним, Чтв 10 Июл 2008 17:42:08:
Вопрос: zsh и bash полностью совместимы на уровне синтаксиса в скриптах?
аноним, Чтв 10 Июл 2008 16:12:09:
Неплохо! Спасибо :)

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds