LINUX.ORG.RU

Лучший shell для повседневного использования

 ,


0

1

Вопрос технический, но флеймообразующий, поэтому в толксы.

Какой на ваш взгляд шелл лучше всего подходит для повседневного использования и почему?

Я долгое время пользуюсь обычным башем, однако временами завистливо поглядываю на ZSH. У него судя по всему куча клевых фич, однако мне он кажется местами слишком избыточным и сложным в настройке.

По работе приходится работать с bash и csh (гореть ему в аду), причем csh при большом желании можно заменить на что-то другое (но лень), а вот от баша никуда не деться.

Хочется привести все к общему знаменателю, но не могу решить к какому. Толи попробовать осилить zsh, там где его можно использовать, толи пытаться мучать баш, чтобы привнести туда пару наиболее интересных для меня фич из zsh, толи выбрать какой-то совсем третий вариант.

Что посоветуют аналитики?

Перемещено mono из talks

Сделать что-нибудь, чтобы не приходилось при повседневном использовании всё время лезть в shell.

Deleted
()

На домашнем/рабочем только zsh. Ну а на серверах везде bash, даже если бы я и мог его изменить, то не стал бы.

php-coder ★★★★★
()
Ответ на: комментарий от Deleted

это точно линукс.орг.ру, сайт, где все кричат о том, что консоль рулит, а гуй - сакс?

и да, при таком раскладе - только сменить работу. Гуя для управления магистральными свичами еще не написали, по крайней мере для тех, с которыми мне приходится работать

marvin_yorke ★★★
() автор топика
Ответ на: комментарий от marvin_yorke

Никто тут не кричит. Просто часто бывает так, что термиал функциональнее и его использование эффективнее.

unikum ★★★★★
()
Ответ на: комментарий от marvin_yorke

Он самый.

А так ли уж принципиально какой shell для этого? Не управляю такими вещами, врать не буду :}

Deleted
()

Для интерактива — только zsh. Для скриптов sh, в крайнем случае — bash.

И, да, zsh не так трудно настраивается, как тебе кажется, а излишние для тебя возможности можешь не использовать. После того, как распробуешь autocomplete в нём, на bash возвращаться не захочешь.

feofan ★★★★★
()

Я долгое время пользуюсь обычным башем, однако временами завистливо поглядываю на ZSH. У него судя по всему куча клевых фич, однако мне он кажется местами слишком избыточным и сложным в настройке.

Если тебе не нужно писать свои правила автодополнения, то ничего сложного там нет.

1. Там при первом запуске появляется настройщик.
2. http://citkit.ru/articles/1083/
3. http://www.altlinux.org/DotFiles/Shells/Zsh/Советы

Мне этих трёх источников вполне хватило. Ещё можешь взглянуть на grml-zsh-config, zshrc там огроменный, но зато всё подробно прокомментировано.

AX ★★★★★
()

главный облом в том, чтобы иметь 2 разных шелла - баш для работы и удобный для себя, даже не в настройке ZSH, а в том, что нужно фактически учить 2 языка, т.к. дома тоже иногда нужны скрипты. Да, можно писать скрипты всегда на баше, а удобный шелл использовать в интерактивном режиме, но в интерактивном тоже бывают нужны однострочники. На работе я в таких случаях делаю
$ bash
$ for i in ... do ... done
$ ^D
т.к. учить синтаксис CSH мне западло, но это как-то слишком костыльно

marvin_yorke ★★★
() автор топика
Ответ на: комментарий от marvin_yorke

это как-то слишком костыльно

Не вижу в этом ничего страшного, сам иногда так делаю =)

feofan ★★★★★
()
Ответ на: комментарий от fragmentor

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

marvin_yorke ★★★
() автор топика
Ответ на: комментарий от marvin_yorke

Да, можно писать скрипты всегда на баше, а удобный шелл использовать в интерактивном режиме, но в интерактивном тоже бывают нужны однострочники.
т.к. учить синтаксис CSH мне западло, но это как-то слишком костыльно

Не понимаю, почему ты ещё не заменил его на баш.

AX ★★★★★
()
Ответ на: комментарий от AX

на старом проекте много на него завязано было (издержки легаси и freebsd), на новом руки не дохоядт пока, плюс мне больше нравится его поведение по ^P, чем у баша. Но в остальном он ужасен, да

marvin_yorke ★★★
() автор топика
Ответ на: комментарий от marvin_yorke

автодополнение опций (вроде можно запилить bash_completion),

йес

отображение статуса гит-репозитория

https://github.com/magicmonty/bash-git-prompt

история, общая для нескольких консолей

нунезнаай... ни разу не пригождалось

вобщем, я за баш :)

aol ★★★★★
()
Ответ на: комментарий от marvin_yorke

вроде можно запилить bash_completion

Не можно, а нужно :)

в баше вроде только при выходе история синхронизируется

man bash в районе history. Вкратце: history -a — записать историю текущего сеанса в history-файл, history -n — дописать history-файл к истории текущего сеанса.

dexpl ★★★★★
()
Ответ на: комментарий от feofan

Zsh, для скриптов - bash. Если нужна уверенность, что будет работать и на линуксе и на фре в режиме сингла - sh.

one117 ★★★★★
()
Ответ на: комментарий от marvin_yorke

Частично, еще не все в нем сделал так как хочется, то есть так как уже есть в баше, но нет в fish.

Но мне очень нравится то что есть.

mono ★★★★★
()
Ответ на: комментарий от marvin_yorke

автодополнение опций

есть у баша в нормальных дистрибутивах

отображение статуса гит-репозитория

это вообще задача не шелла, а какого то консольного монитора.

darkenshvein ★★★★★
()

Лично мне вообще пофиг, главное чтобы было авто дополнение

Debasher ★★★★★
()

/me пользуется zsh практически везде, кроме билдовых виртуалок (благо их щас вообще одна), на которых дефолт (на фряхе - tcsh, правда с неплохим конфигом, на лялихе - баш).

lazyklimm ★★★★★
()

да, oh-my-zsh уже советовали?

lazyklimm ★★★★★
()

zsh (oh-my-zsh), скрипты - bash.
Хотя если просто «повседневное использование» - то вообще без разнцы. zsh ИМХО просто немного удобнее, вот и все.

kovrik ★★★★★
()
Ответ на: комментарий от J

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

marvin_yorke ★★★
() автор топика

Какой на ваш взгляд шелл лучше всего подходит для повседневного использования

дефолтный bash

потому что zsh и прочие слишком умные шеллы раздражают своей чрезмерной умностью. Бесит то, что его надо настраивать, бесит прыгающая строка ввода, когда оно пихает свои подсказки, бесит, что оно постоянно ошибается, исправляет мои правильно набранные команды на то, как ОН посчитал нужным.

Alve ★★★★★
()
Ответ на: комментарий от marvin_yorke

есть даже на кофеварке.

на кофеварках чаще всего busybox, который +/- sh-совместимый, башем там и не пахнет, так что я для скриптов использую sh

lazyklimm ★★★★★
()
Ответ на: комментарий от darkenshvein

есть у баша в нормальных дистрибутивах

на уровне tcsh 100500-летней давности

это вообще задача не шелла, а какого то консольного монитора.

лишние сущности

lazyklimm ★★★★★
()
Ответ на: комментарий от aol

йес

ОБХС! Оно по сравнению с практически дефолтным zsh-ным уныло совсем.

https://github.com/magicmonty/bash-git-prompt

за использование

#!/bin/sh

в скрипте, состоящем из башизмов чуть менее чем совсем, хочется взять и наказать

lazyklimm ★★★★★
()
Ответ на: комментарий от marvin_yorke

и, да, zsh поддерживает большую часть башизмов

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

ОБХС!

да не бугурти ты так! я тебе ничего не навязываю ;)

хочется взять и наказать

иди и накажи, это ж гитхаб!

aol ★★★★★
()

После того, как я прочитал man bash и повключал некоторые не включённые по дефолту опции, жить стало ярче. Держать два шелла мне кажется тоже избыточным, а для программирования из них двух подходит только bash. К тому же в него портируют все действительно интересные фичи, в то время как в zsh некоторые фичи из баша портировать даже не думают, как [ -v например.

Deleted
()
Ответ на: комментарий от lazyklimm

на линупсе баш выбирает тебя

только тех, кто не осилил пакетный менеджер.

Deleted
()

Почти дефолтный zsh, очень прикольный.

olibjerd ★★★★★
()

gnome shell

anonymous
()
Ответ на: комментарий от X10Dead

А однострочники мне как тестировать как прикажешь? /bin/bash -c «тра-ля-ля»? А если я тестирую что-то весьма усиленно, создавая там строки, массивы или ещё какую лабуду, разные варианты регэкспов?

Deleted
()
Ответ на: комментарий от Deleted

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

marvin_yorke ★★★
() автор топика
Ответ на: комментарий от marvin_yorke

Я и не говорил, что я использую их в обиходе.

Deleted
()
Ответ на: комментарий от Deleted

Берешь, и учишь перл. Либо дефайнишь /bin/sh, который почти везде является симплинком баша. Да и давно у zsh проблемы с совместимость?

X10Dead ★★★★★
()

fish же. Мне пока нравится. А еще когда-нибудь я отобью его руки которые лазят в буфер обмена и вообще будет щастие.

Suntechnic ★★★★★
()
Ответ на: комментарий от X10Dead

Берешь, и учишь перл.

Мы тут интерпретаторы командной строки обсуждаем, если что.

Либо дефайнишь /bin/sh, который почти везде является симплинком баша

И что дальше? Вызывать не «/bin/bash -c», а «/bin/sh -c»?

Да и давно у zsh проблемы с совместимость?

Очень.

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