LINUX.ORG.RU
ФорумTalks

bash vs zsh


0

0

в чем реальные отличия?
Я вот всю сознательную жизнь на bash'е сижу. Нередко слышу возгласы вида "zsh рулит!". Но сам с zsh ниразу не знаком.
Может кто просветит?

Re: bash vs zsh

Продвинутое автодополнение, например
scp <TAB> что сделает здесь баш?
scp somehost:<TAB> а здесь?

anotheranonymous ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

есть не менее удобное bash-completion, так что не катит.

volh ★★ ()
Ответ на: Re: bash vs zsh от volh

Re: bash vs zsh

>есть не менее удобное bash-completion, так что не катит.
Да что ты говоришь. Оно не умеет такого.

anotheranonymous ()
Ответ на: Re: bash vs zsh от volh

Re: bash vs zsh

>есть не менее удобное bash-completion, так что не катит.

Я его так и не осилил :) А в zsh - «из коробки».

KRoN73 ★★★★★ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

>Да что ты говоришь. Оно не умеет такого.

изкоробки. справедливости ради, оно не дополнит хост в случае команды ssh TAB, только ssh username@TAB, но опять же, это программируется.

сам пользователь zsh около трех или четырех лет.

volh ★★ ()

Re: bash vs zsh

пока понял только про автодополнение

vitroot ★★ ()
Ответ на: Re: bash vs zsh от volh

Re: bash vs zsh

Да хост это фигня. Zsh умеет например файлы на _удаленном_ хосте автодополнять.

anotheranonymous ()
Ответ на: Re: bash vs zsh от vitroot

Re: bash vs zsh

Это одна из мощных сторон zsh, а ты думал там спецэффекты как в компизе?

anotheranonymous ()
Ответ на: Re: bash vs zsh от vitroot

Re: bash vs zsh

почитай про модификаторы, все по той же ссылке. меня лично они и автодополнялка ( bash-completion тогда был некузявый совсем вроде, или его совсем не было? ) сподвигли перейти.

volh ★★ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

проверил на bash-completion

дополняет и имя хоста, и пути на удаленном хосте. что я не так делаю?

кстати, zsh уже научили юникоду?

annoynimous ★★★★★ ()
Ответ на: Re: bash vs zsh от annoynimous

Re: bash vs zsh

он еще и юникод не понимает??

vitroot ★★ ()
Ответ на: Re: bash vs zsh от vitroot

Re: bash vs zsh

> он еще и юникод не понимает??

Уже два года как. К выше сказанному добавлю: подсказки по командам с описанием параметров, навигация по спискам дополнения, группировка и раскраска файлов по типам в этих списках, дополнение по хистори, продвинутые алиасы, корректировка ввода. Ещё всякие мелочи, типа auto_cd, auto_pushd. Но нужно много красноглазить с конфигами чтобы получть удобную рабочую систему. Bash проще конечно. По аналогии с текстовыми редакторами - bash vs zsh это как nano vs vim :)

Hjorn ()
Ответ на: Re: bash vs zsh от Hjorn

Re: bash vs zsh

В смысле два года назад уже научился :)

Вообще, какой смысл оценивать с чужих слов? Возьмите да попробуйте. Или это тема просто ради холивара?

Hjorn ()
Ответ на: Re: bash vs zsh от vitroot

Re: bash vs zsh

Я уже 4 года башем не пользуюсь. А в баше можно написать "s", нажать кномпку "вверх" и получить последние команды, начинающиеся на s?

UVV ★★★★★ ()
Ответ на: Re: bash vs zsh от UVV

Re: bash vs zsh

а зачем это нужно, если и там и там работает ^R ? нет, правда интересно. тем более, что изкоробки дополнения стрелочками в zsh нет - надо настраивать.

volh ★★ ()
Ответ на: Re: bash vs zsh от volh

Re: bash vs zsh

> и там и там работает ^R

Ага, только в баше он работает немного не так. А именно нет навигации по истории вызова команды. Да и к тому же неудобно это - жать ещё ^r.

> изкоробки дополнения стрелочками в zsh нет - надо настраивать

Странно, у меня вроде изкоробки. Хотя может это я сам что то в конфиге прописал давным давно, не уверен.

> а зачем это нужно

Слакварщик? :)

Hjorn ()
Ответ на: Re: bash vs zsh от UVV

Re: bash vs zsh

Можно:в inputrc
"\e[A": history-search-backward
"\e[B": history-search-forward

TheFallenAngel ★★ ()

Re: bash vs zsh

ещё там проверка ошибок есть

timth ★☆ ()
Ответ на: Re: bash vs zsh от annoynimous

Re: bash vs zsh

>дополняет и имя хоста, и пути на удаленном хосте. что я не так делаю?

+1. anotheranonymous & volh: Зачем вы врёте? Всё прекрасно дополняется, и ssh TAB и ssh PgUp. Так к чему это тогда? Показать своё незнание?

UserUnknown ★★★★★ ()
Ответ на: Re: bash vs zsh от UVV

Re: bash vs zsh

Можно. Только эта кнопка называется PgUp :)

UserUnknown ★★★★★ ()

Re: bash vs zsh

Тут всё про командную строку. Про скрипты почему-то все молчат, как партизаны. Zsh вроде бы умеет более хитрые вещи со строками делать, например.

Xenesz ★★★★ ()
Ответ на: Re: bash vs zsh от Xenesz

Re: bash vs zsh

Скрипты на zsh - моветон. Для хитрых вещей со строками есть perl.

Hjorn ()
Ответ на: Re: bash vs zsh от UserUnknown

Re: bash vs zsh

>Зачем вы врёте? Всё прекрасно дополняется, и ssh TAB и ssh PgUp. Так к чему это тогда? Показать своё незнание?

какая-то нездоровая реакция. у себя проверил - не дополняется, а pgup однозначно переходит к первой команде в хистори и все. ну да пофигу, свою имху ( что переходить на zsh только из-за дополнялки смысла не имеет ) я высказал в начале.

volh ★★ ()
Ответ на: Re: bash vs zsh от Hjorn

Re: bash vs zsh

есть мнение, что Ъ используют scsh )

volh ★★ ()
Ответ на: Re: bash vs zsh от volh

Re: bash vs zsh

bash 3.2_p39
bash-completion 1.0-r3
gentoo-bashcomp 20090613

Вот как-то так..

UserUnknown ★★★★★ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

В Debian'е дополняет пути на удаленном хосте.

urxvt ★★★★★ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

>>есть не менее удобное bash-completion, так что не катит. >Да что ты говоришь. Оно не умеет такого.

Да ну? Таки не умеет?

dikiy ★★☆☆☆ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

>Да хост это фигня. Zsh умеет например файлы на _удаленном_ хосте автодополнять.

bash_completion умеет тоже.

Если кому надо - выложу полный пруф.

пруф:

# scp(1) completion
#
_scp()
{
local cur userhost path
local optconfigfile

COMPREPLY=()
cur=`_get_cword ":"`

_expand || return 0

if [[ "$cur" == *:* ]]; then
# if $COMP_SCP_REMOTE is not null, 'scp' will
# complete on remote host path (requires
# passwordless access to the remote host)
if [ -n "${COMP_SCP_REMOTE:-}" ]; then
local IFS=$'\t\n'
# remove backslash escape from :
space retained for others.

dikiy ★★☆☆☆ ()
Ответ на: Re: bash vs zsh от Hjorn

Re: bash vs zsh

>Уже два года как. К выше сказанному добавлю: подсказки по командам с описанием параметров, навигация по спискам дополнения, группировка и раскраска файлов по типам в этих списках, дополнение по хистори, продвинутые алиасы, корректировка ввода. Ещё всякие мелочи, типа auto_cd, auto_pushd. Но нужно много красноглазить с конфигами чтобы получть удобную рабочую систему. Bash проще конечно. По аналогии с текстовыми редакторами - bash vs zsh это как nano vs vim :)

Все это можно и на bash, афаик. Разве что про навигацию не уверен.

dikiy ★★☆☆☆ ()
Ответ на: Re: bash vs zsh от Hjorn

Re: bash vs zsh

>> и там и там работает ^R

>Ага, только в баше он работает немного не так. А именно нет навигации по истории вызова команды. Да и к тому же неудобно это - жать ещё ^r.

нормально там работает. ^r вводишь нужный поиск. А потом внова по ^r/^p продвигаешься вверх/вниз по хистори опять.

Жать ^r ничуть не труднее.

dikiy ★★☆☆☆ ()
Ответ на: Re: bash vs zsh от anotheranonymous

Re: bash vs zsh

> Да что ты говоришь. Оно не умеет такого.

В четвертой версии баша действительно поломали дополнение удаленных файлов. Я даже сделал PKGBUILD, так как основные разработчики не особо шевелятся с фиксом. bash4-completion-git в ауре, если кому из арчеводов понадобится.

baverman ★★★ ()

Re: bash vs zsh

Несколько раз пытался переехать на zsh, но каждый раз находил способ реализации очередной «киллер-фичи» в bash. Наконец, zsh ощутимо притормаживал при запуске и автодополнение для aptitude (имён пакетов) в разы медленнее, чем в bash.

И таки объясните долбодятлу, как в приглашении zsh задавать цвета, ибо стандартные последовательности из

$ man console_codes
не работают... :)

GotF ★★★★★ ()
Ответ на: Re: bash vs zsh от GotF

Re: bash vs zsh

> ибо стандартные последовательности из man console_codes не работают...
Работают. Просто их начинать надо с \е.

> автодополнение для aptitude (имён пакетов) в разы медленнее, чем в bash.

При первом запуске думает секунд пять, следующие разы - реактивно. Не говоря уж о том, что zsh показывает кавайную простынку, пот которой можно перемещаться стрелочками, а в баше до сих пор лишь унылое Display all 34435 possibilities? (y or n)

kapsh ()
Ответ на: Re: bash vs zsh от GotF

Re: bash vs zsh

И таки объясните долбодятлу, как в приглашении zsh задавать цвета,

А, и забыл. %F же. Например у меня

% echo $PROMPT
[ %F{blue}%B%~/%b%1v %f]
%B%(!.%F{red}#%f.%F{green}%%%f)%b
Т.е. %F{color}text%f выведет text цветом color.

kapsh ()
Ответ на: Re: bash vs zsh от kapsh

Re: bash vs zsh

kapsh (09.09.2009 17:10:56)

Просто их начинать надо с \е.

Он оно чё...

kapsh (09.09.2009 17:10:56)

можно перемещаться стрелочками

А у меня не перемещалось О_о

GotF ★★★★★ ()
Ответ на: Re: bash vs zsh от kapsh

Re: bash vs zsh

Спасибо. В руководстве почему-то не заметил.

GotF ★★★★★ ()
Ответ на: Re: bash vs zsh от GotF

Re: bash vs zsh

А у меня не перемещалось

Это делает что-то вроде:

zstyle ':completion:*' menu select=long-list select=0
в ~/.zshrc

Вообще, есть в ZSH отличная конфигурялка с диалоговым режимом, её можно вызвать командами

autoload zsh-newuser-install
zsh-newuser-install

kapsh ()
Ответ на: Re: bash vs zsh от GotF

Re: bash vs zsh

Это вроде бы в мане zshmisc. Хотя если что-то искать, лучше пользоваться маном zshall

kapsh ()
Ответ на: Re: bash vs zsh от UVV

Re: bash vs zsh

Да.

bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'


annoynimous ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.