iespes

Package Managers and Simple Applications

Gerenciadores de Pacotes:

Todo sistema operacional de respeito deve ter um gerenciador de pacotes que consegue se conectar a um servidor online, baixar e instalar os pacotes. Pacotes podem ser aplicativos (edge, chrome, vscode, …), comandos (fortune, cowsay, git, …) para o determinado sistema, entre outros softwares.

Alguns dos gerenciadores de pacotes mais conhecidos são:

Além dos gerenciadores de pacote de cada sistema existem também os gerenciadores específicos para cada linguagem de programação e stack de programação (pesquise o que é uma stack de programação), alguns deles são:

Instalando Aplicativos / Softwares:

Uma das distribuições Linux mais utilizadas é o Ubuntu, cujo gerenciador de pacotes é o apt, que segue as seguintes regras para a instalação de pacotes:

Caso o pacote seja comum (o comando fortune, por exemplo) basta rodar:

apt install fortune

Já em caso da necessidade de acesso à arquivos críticos para o sistema (o pacote build-essential, por exemplo), é necessário a instalação como administrador:

sudo apt install build-essential # o comando sudo 'invoca' o administrador

Após isso digite a senha e a instalação será iniciada.

Obs1:

Um parâmetro que pode ser útil é o -y. Sempre que adicionamos esse parâmetro em um comando ele automaticamente considera Yes como a resposta para as perguntas executadas pelo comando, nesse caso, pulando as etapas de instalação. Assim, podemos rodar:

sudo apt install build-essential -y

Obs2: é importante verificar se dado gerenciador de pacotes possui o pacote desejado (o pacote asdf, por exemplo) em seu servidor oficial. Nem todo pacote está em um gerenciador, as vezes precisamos adicionar um servidor alternativo ao servidor original do gerenciador.

Rodando comandos / Entrada e saída padrão / Pipe:

Em um terminal tudo são comandos, tendo entradas e saídas (input e output) específicas. Quando ‘chamamos’ um comando ele pode tratar os dados de diferentes maneiras:

Existem ainda outras modalidades de entrada de dados, mas essas são as mais utilizadas.

Sobre os tipos de saída de dados. Existem dois tipos principais de saída de dados para um comando, são eles: