Noções básicas de Python e Bash

PythonBeginner
Pratique Agora

Introdução

Na automação Linux, o Bash é excelente para conectar ferramentas de linha de comando. No entanto, à medida que a lógica se torna mais complexa, o Python costuma ser uma opção melhor, pois oferece uma estrutura mais clara, melhor manipulação de dados e uma biblioteca padrão abrangente.

Por isso, muitas equipes de operações usam os dois: Bash para tarefas curtas e próprias do shell, e Python para scripts de automação mais fáceis de manter.

Neste laboratório, você dará os primeiros passos no uso do Python em um ambiente Linux. Você aprenderá a verificar a versão do Python, usar o shell interativo para testes rápidos e escrever um script Python que se comporta como um comando nativo do Linux.

Verifique a versão do Python

Antes de escrever qualquer código, é essencial saber qual versão do interpretador Python está instalada no sistema. A maioria das distribuições Linux modernas, incluindo o sistema Ubuntu que você está usando, já vem com o Python 3 instalado.

No trabalho de operações, essa verificação também está relacionada à compatibilidade. Versões diferentes do Python podem adicionar ou remover recursos da linguagem e alterar o comportamento das bibliotecas. Um script que funciona em uma máquina pode falhar em outra se você presumir, sem verificar, que o interpretador é idêntico em todos os lugares.

Nesta etapa, você verificará a versão instalada do Python 3. Isso garante que o ambiente está pronto para os scripts que você escreverá mais adiante.

Abra o terminal e execute o comando a seguir para verificar a versão:

python3 --version

Você deverá ver uma saída semelhante a esta:

Python 3.10.12

O número exato da versão pode variar um pouco, mas, desde que seja Python 3.x, está tudo certo. Observe que usamos python3 explicitamente porque, em alguns sistemas antigos, python (sem o 3) pode se referir ao Python 2, que está obsoleto, ou pode nem estar vinculado a um interpretador.

Use o REPL

O Python oferece um shell interativo, geralmente chamado de REPL (Read-Eval-Print Loop). Essa é uma ferramenta muito útil para testar trechos de código, verificar se uma biblioteca está disponível ou fazer cálculos rápidos sem precisar criar um arquivo.

O REPL é útil porque reduz o tempo entre uma alteração e seu resultado. Em vez de editar um arquivo, salvá-lo e executá-lo repetidamente, você pode testar uma expressão por vez. Muitos engenheiros usam o REPL da mesma forma que usam o prompt do shell: como um espaço para experimentar antes de transformar uma ideia em um script real.

Nesta etapa, você entrará no shell interativo do Python, executará um comando simples e depois retornará ao shell Bash.

Primeiro, inicie o shell interativo do Python 3 digitando:

python3

O prompt de comando mudará para >>>, indicando que você está dentro do ambiente Python.

Agora, digite um comando Python simples para exibir uma mensagem:

print("Hello from Python REPL")

A saída aparecerá imediatamente.

Para sair do shell Python e retornar ao shell Bash padrão do Linux, digite:

exit()

Como alternativa, pressione Ctrl + D.

Depois de sair, você deverá ver novamente o prompt de comando padrão, por exemplo, labex:~/project $.

Crie um script

Embora o REPL seja excelente para testes, a automação real exige salvar o código em scripts. Um script Python é simplesmente um arquivo de texto que contém código Python.

A principal vantagem de um script em relação a um comando executado uma única vez é a possibilidade de repeti-lo. Depois que a lógica está em um arquivo, você pode revisá-la, versioná-la com Git, executá-la novamente no dia seguinte e compartilhá-la com outro engenheiro sem precisar redigitar nada.

Nesta etapa, você criará um arquivo chamado system_info.py.

Use o editor de texto nano para criar e abrir o arquivo:

nano system_info.py

Adicione o conteúdo a seguir ao arquivo:

print("Starting system info script...")

Para salvar e sair do nano:

Para salvar as alterações no editor nano, pressione Ctrl + O e depois pressione Enter para confirmar o nome do arquivo. Por fim, pressione Ctrl + X para sair do editor e retornar ao terminal.

Agora, verifique se o arquivo foi criado:

ls -l system_info.py

Use a biblioteca padrão

Um dos maiores pontos fortes do Python é sua biblioteca padrão, que oferece muitos recursos prontos para uso. Diferentemente do Bash, no qual muitas vezes é necessário analisar a saída de comandos como uname ou cat /etc/os-release, o Python fornece módulos integrados para acessar informações do sistema de forma organizada.

Esse é um dos principais motivos pelos quais o Python é comum em ferramentas de operações. Em vez de combinar vários comandos pequenos de processamento de texto, você pode trabalhar diretamente com funções e objetos estruturados. Isso normalmente torna os scripts mais fáceis de ler e menos frágeis quando o formato da saída muda.

Nesta etapa, você modificará o script para usar a biblioteca platform e exibir detalhes sobre o sistema operacional.

Abra o script novamente com o nano:

nano system_info.py

Modifique o conteúdo para que fique assim:

import platform

print("Starting system info script...")
print(f"System: {platform.system()}")
print(f"Release: {platform.release()}")
print(f"Version: {platform.version()}")

Salve e saia do nano (Ctrl+O, Enter, Ctrl+X).

Você pode testar o script passando-o explicitamente ao interpretador Python:

python3 system_info.py

Você deverá ver uma saída com detalhes sobre o seu ambiente Linux.

Execute o script

Nas etapas anteriores, você executou o script usando python3 system_info.py.

Chamar o interpretador explicitamente é o padrão mais claro para iniciantes, pois elimina ambiguidades. O shell não precisa tentar descobrir como executar o arquivo, e você consegue ver exatamente qual interpretador está executando o código.

No uso padrão do Linux, às vezes você verá scripts executados diretamente, como em ./system_info.py. Isso exige duas coisas:

  1. A linha de "shebang" (que ignoramos).
  2. Permissões de "execução" no arquivo.

Como estamos trabalhando em um ambiente simplificado sem shebangs, usaremos o método mais confiável: executar o script explicitamente com o interpretador Python.

Execute o script mais uma vez para confirmar que ele continua funcionando:

python3 system_info.py

Esse comando explícito informa exatamente ao Linux o que fazer: "Use o programa python3 para ler e executar as instruções do arquivo system_info.py."

Resumo

Neste laboratório, você estabeleceu com sucesso a conexão entre Bash e Python. Você aprendeu a:

  • Verificar a versão do Python para garantir a compatibilidade do ambiente.
  • Usar o REPL para testes interativos.
  • Criar um script Python.
  • Usar a biblioteca padrão platform para acessar dados do sistema.
  • Executar o script usando o comando python3.

Essas habilidades formam a base dos scripts Python no Linux e permitem escrever ferramentas de automação mais complexas e legíveis do que normalmente seria possível usando apenas o Bash.