Рекомендация - Zsh по сравнению с FishShell. Сценарии, производительность и poweruser серовато-синий [закрытый]

В решениях с несколькими проектами одна вещь я нашел очень полезными, должен иметь всю точку файлов AssemblyInfo к единственному проекту, который управляет управлением версиями. Таким образом, мои AssemblyInfos имеют строку:

[assembly: AssemblyVersion(Foo.StaticVersion.Bar)]

у меня есть проект с единственным файлом, который объявляет строку:

namespace Foo
{
    public static class StaticVersion
    {
         public const string Bar= "3.0.216.0"; // 08/01/2008 17:28:35
    }
}

Мой автоматизированный процесс сборки тогда просто меняет ту струну путем получения по запросу новой версии от базы данных и постепенного увеличения предпоследнего числа.

я только изменяю Номер основной сборки, когда featureset изменяется существенно.

я не изменяю версию файла вообще.

10
задан Jens 18 June 2016 в 12:39
поделиться

3 ответа

Исторически находятся пламенные материалы между раковинами C (CSH и TCSH) и Bash. Жалоба на вариантах CSH заключается в том, что они плохие для сценариев.

В тех госках я был Клинкой, я никогда не сделал любые автономные скрипты, где был выбран язык сценариев, потому что это то, что была моя раковина.

Я написал различные сценарии, которые могут широко разделить на две категории:

  1. те, которые помогают моей производительности командной строки
  2. те, которые не напрямую связаны с моим производительностью командной строки.

Сценарии в категории 1. почти всегда записываются в моем языке сценариев Shell (часто как функции, как я использую ZSH и ранее использовал Bash оба из которых функции поддержки).

скрипты в категории 2. написаны на то, что кажется наиболее эффективным (как время разработки, так и время работы). Я часто нахожусь, написав маленькие сценарии в Perl, C (скомпилирован, очевидно), Bash / ZSH / SH или что еще я хочу. Я сделал маленькую сценарию Python (но не большой), и даже прибегаю к Java по случаю (опять же скомпилирован - иш).

Так что я о чем я болтаю? Не основывайтесь на вашем выборе Shell по своим автономным возможностям сценариев. Выберите свою оболочку для своей утилиты для вас в качестве оболочки. Сценарий во всем остальном вы выбираете. Вы, вероятно, будете достаточно хорошими с Bash как ваша оболочка (хотя я люблю ZSH немного больше, ** / * Globbing - это красиво и несколько других маленьких вещей, но большинство скриптов, которые я написал для ZSH, рано идентичны их Bash коллеги).

14
ответ дан 3 December 2019 в 16:10
поделиться

если вы не можете найти какое-либо сравнение между zsh и fish, попробуйте их сами. Это единственный способ определить, какой из них вы предпочитаете, никто вам этого не скажет. Также определите значение продуктивности. Для меня это обилие модулей и внутренние возможности языка. Если вы начали с Python, дерзайте. Что касается оболочек, вы можете узнать о них меньше (не говоря уже о том, чтобы полностью забыть об этом), что касается, возможно, понимания ваших сценариев rc и других системных вещей и т. Д. Помимо этого, Python может делать то же, что и оболочка.

5
ответ дан 3 December 2019 в 16:10
поделиться

Вы будете наиболее продуктивны в среде, которую вы уже знаете. Я использовал bash годами, и все в порядке. Он завершает почти все , может использоваться с git , mercurial ...

3
ответ дан 3 December 2019 в 16:10
поделиться