Qual shell devo usar - tcsh vs bash? [fechadas]

25

Estou usando tcsh há muito tempo. Mas sempre que estou procurando por algo, geralmente descubro que os métodos especificados são bash specific. Até mesmo a sintaxe dos scripts shell é diferente para os dois.

Pelo que eu experimentei pesquisar e aprender na internet, bash parece ser o shell mais comum usado. Até mesmo o número de perguntas neste site com tags bash é muito mais (cinco vezes mais atualmente) do que o número de perguntas marcadas com tcsh .

Então, eu estou querendo saber se devo mudar para o bash. O que você acha?

Por que devo me ater ao tcsh OU por que devo passar para bash ?

    
por Lazer 19.06.2014 / 02:22

7 respostas

20

Depois de aprender bash acho que tcsh é um pouco de um passo para trás. Por exemplo, o que eu poderia facilmente fazer no bash eu estou achando difícil fazer no tcsh. Minha pergunta sobre o tcsh . O suporte e a documentação da Internet também são muito melhores para o bash e muito limitados para o tcsh. O número de livros da O'Reilly no bash são ótimos, mas não encontrei nada similar para o tcsh.

    
por 13.04.2017 / 14:37
26

Na verdade, você deve passar para zsh ! É essencialmente compatível com versões anteriores e tem toda a utilidade de bash com uma enorme ajuda de awesomeness . Existe até um livro (embora eu não tenha lido isso).

Admito um motivo para Não use zsh over bash , mas a menos que você esteja trabalhando constantemente em várias novas instalações, isso não se aplica realmente. Especialmente se você conhece as diferenças mais significativas . No entanto, isso é realmente semelhante às diferenças entre vim e vi ; você não quer ser ingênuo, mas praticamente não é grande coisa. Mesmo usuários hardcore de vim podem encontrar emacs e vice-versa.

    
por 13.04.2017 / 14:13
20

Você deve alternar para um link compatível com POSIX, como um dos bash, ksh, traço, mas não zsh e certamente não tcsh. Já faz muito tempo desde que o csh foi declarado uma péssima escolha para o script: link tcsh não é muito diferente nessa área.

Ao escrever scripts, certifique-se de usar apenas construções POSIX (ou seja, evitar bashisms e likes) se você não quiser ser bloqueado novamente em algo não portátil.

    
por 27.12.2010 / 08:45
7

A compatibilidade obcecada está faltando o ponto, eu acho. Se você tentar tornar tudo compatível, colocando #!/bin/sh no topo e usando extensões .sh , mas nunca testando em nada, mas bash , você não garantiu um compatível roteiro! É melhor usar apenas #!/bin/bash e .bash para que os usuários realmente conheçam o requisito real.

Se você sabe zsh , tcsh , ou algo melhor que bash , e tem um bom manual de referência para ele, não segure . Assim como as pessoas esperam instalar perl ou python para poder executar alguns scripts, eles também podem manipular a instalação do seu shell obscuro! : D

    
por 21.08.2010 / 22:28
5

Qual shell? Vá para aquele com a melhor relação "facilidade de uso" versus "aborrecimentos" ...

Se você não consegue encontrar exemplos gerais e explicações suficientes para o seu shell "Maserati", então o desempenho extra pode ser mais um problema do que um bônus ...

Eu achei este artigo / site interessante; pode valer a pena ler: Diferenças no shell do UNIX e como alterar o seu shell

    
por 27.12.2010 / 18:44
0

O zsh provavelmente tem mais algumas semelhanças com o tcsh do que o bash.

Veja: link

As pessoas costumam afirmar que o zsh pode fazer coisas que o bash não pode, mas eu não achei que fosse o caso. O que eu tenho visto é que, para o zsh, é mais fácil, integrado ou ativado por padrão, enquanto no bash é um script addon, precisa ser ativado ou é mais difícil.

(disclaimer: Eu sou um usuário bash que algumas vezes considerou mudar para o zsh)

    
por 21.08.2010 / 22:34
-3

Por alguns motivos, usei o tcsh, como usei há 20 anos. Como eu sei, o bash é originado de sh, mas é claro, com muitas coisas do csh, mas o tcsh é originado do csh. Eu realmente gosto da conclusão do comando nos primeiros dias, mas está disponível na maioria dos shells agora. Para scripts, devemos nos ater a / bin / sh?

    
por 10.12.2013 / 21:49