Ao olhar para o Unix, sempre acho o número de comandos de terminal um pouco opressor. TinyCoreLinux, por exemplo minha distribuição favorita, tem mais de 300 comandos. Eu não posso dizer o quão necessário muitos desses comandos são. Quantos comandos a caixa Unix original tinha?
Estou essencialmente esperando que, indo para a caixa original, possamos diminuir o número de comandos para os recém-chegados. Sim, entendo que você não precisa aprender todos os comandos, mas sei que definitivamente sinto uma sensação de conclusão quando aprendo todos os comandos para uma distribuição (o que ainda não aconteceu exatamente).
A primeira edição do Unix tinha cerca de 60 comandos, conforme documentado no manual (também disponível como um site ):
Havia mais alguns comandos, como
/etc/glob
, que foram documentados na página de manual de outro comando (sh
no/etc/glob
caso de); mas a lista acima dá uma boa ideia. Muitos deles sobreviveram e ainda são relevantes; outros seguiram o caminho do dodô (felizmente, nodsw
caso de '!).É fácil ler todo o manual do Unix V1; Não tenho certeza se vale a pena fazer algo assim para uma distribuição moderna. A própria especificação POSIX tem agora mais de 3.000 páginas, e isso “apenas” documenta um núcleo comum, com 160 comandos (muitos dos quais são opcionais) e alguns shell embutidos ; distribuições modernas contêm milhares de comandos, que nenhuma pessoa pode aprender exaustivamente. O último manual completo do sistema que li de capa a capa foi o manual Coherent...
Se você quiser experimentar o V1 Unix, confira o repositório V1 de Jim Huang : você encontrará código-fonte, documentação e instruções para criar e executar um híbrido V1-2 usando a simulação PDP-11 do SIMH . (Agradeço a Guy pela sugestão.) O repositório PDP-7 Unix de Warren Toomey também é interessante.
(Obrigado, como sempre, a Stéphane por suas múltiplas sugestões.)
Tendo trabalhado em grandes projetos com enormes APIs e com colegas que enfrentaram o mesmo problema em relação à tentativa de obter uma visão geral das APIs e bancos de dados, etc., recomendo que você
Pode ser interessante tentar obter uma visão geral do que é possível fazer em um ambiente de shell Unix, mas a maneira mais fácil de aprender como fazer as coisas é ter tarefas para resolver e descobrir quais ferramentas estão disponíveis para resolver essas tarefas específicas .
Fazer perguntas (e/ou ler as respostas) aqui no site Unix & Linux pode ser uma boa forma de estudar. Responder a perguntas é ainda melhor, o que inclui ser corrigido e mostrar maneiras melhores de fazer as coisas.
A leitura de listas de utilitários, sejam padrão, antigos ou de terceiros, provavelmente não será útil, pois não lhe dirá nada sobre como usar esses utilitários em combinação uns com os outros para resolver problemas reais.
Tentar aprender tudo (ou mesmo um pequeno subconjunto) sem usar ativamente as ferramentas provavelmente causará confusão.