Sistema Operacional macOS
O que é macOS?
macOS é o nome dado ao sistema operacional dos computadores da Apple, usado em iMacs, Macbooks, Mac Pros, Mac Studios e Mac Minis produzidos pela Gigante de Cupertino.
O sistema é o maior rival do Windows no mercado de computadores pessoais e está disponível desde 1984.
O que significa macOS?
O nome é uma junção dos termos “mac” e “OS”. Mac deriva de Macintosh, o nome dado aos primeiros computadores lançados pela Apple na década de 80, enquanto “OS” é uma sigla para “Sistema operacional” em inglês.
O nome Macintosh foi usado até 1998, quando a empresa decidiu adotar apenas a abreviação Mac para os computadores (usada até hoje).
Já o sufixo “OS” é usado pela Maçã para identificar os sistemas operacionais para toda a linha de produtos: iOS para iPhone, iPadOS para iPad, watchOS para Apple Watch e por aí vai.
Evolução do nome
Atualmente chamado de Mac OS Classic, a primeira versão do sistema operacional esteve presente nos computadores da Apple desde o lançamento do primeiro Macintosh. O destaque ficava pela presença de uma interface gráfica do usuário, que permitia controlar os arquivos com maior facilidade, além da introdução do mouse.
Conforme a empresa lançava novos computadores, o SO recebia novas atualizações e seguiu assim até o Mac OS 9, lançado em 1999. A partir de 2001, o nome mudou para Mac OS X e as versões dos updates começaram a receber codinomes de felinos: o primeiro foi o Mac OS X 10.0 Cheetah (o apelido foi usado apenas internamente, no caso) e durou até o Mac OS X 10.8 Mountain Lion, de 2012.
Daquele momento em diante, a Apple mudou os codinomes para homenagear lugares do estado da Califórnia, EUA, mantido pela fabricante até os dias atuais. O primeiro foi o Mac OS X 10.9 Mavericks, uma praia famosa para a prática de surfe, enquanto a versão mais recente adota o nome de macOS 14 Sonoma, em referência a uma cidade no estado.
A última mudança no nome ocorreu em 2016, quando a Maçã mudou o termo Mac OS X para macOS e alinhou a grafia da marca com a de seus outros sistemas.
macOS: Visão Geral
O macOS é o sistema operacional desenvolvido pela Apple para computadores Mac. Ele é reconhecido por sua estabilidade, interface amigável e integração com o ecossistema Apple. Além disso, o macOS possui um núcleo Unix, garantindo segurança e robustez, sendo amplamente usado por profissionais em design, desenvolvimento e cibersegurança.
Instalação do macOS
1. Requisitos de Sistema
Hardware: Certifique-se de que o hardware é compatível com a versão desejada. Por exemplo, o macOS Ventura requer Macs lançados a partir de 2017.
Armazenamento: Mínimo de 20 GB de espaço livre.
Conexão de Internet: Necessária para baixar a instalação.
2. Processo de Instalação
Baixe o instalador na Mac App Store ou pelo site oficial da Apple.
Grave o instalador em um pendrive usando o Terminal, caso prefira uma instalação limpa:
sudo /Applications/Install\ macOS\ [versão].app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled
Inicie o Mac no Modo de Recuperação (pressione Command (⌘) + R durante a inicialização).
Escolha "Instalar macOS" e siga as instruções.
Configuração para Uso em Rede
1. Configuração de Rede Wi-Fi ou Ethernet
Acesse Preferências do Sistema > Rede.
Selecione Wi-Fi ou adicione uma interface Ethernet.
Insira as credenciais de rede (se necessário).
2. Compartilhamento de Arquivos
Vá em Preferências do Sistema > Compartilhamento.
Habilite "Compartilhamento de Arquivos".
Configure permissões de usuários.
3. Conexão a Servidores
Acesse Finder > Ir > Conectar ao Servidor.
Insira o endereço SMB ou AFP do servidor.
Versões do macOS
1. Clássicas:
macOS 10.6 Snow Leopard
macOS 10.7 Lion
2. Recentes:
macOS 11 Big Sur
macOS 12 Monterey
macOS 13 Ventura
macOS 14 Sonoma
Segurança no macOS
O macOS implementa diversas camadas de segurança:
1. FileVault 2: Criptografa o disco de inicialização.
2. Gatekeeper: Verifica aplicativos para impedir execuções não autorizadas.
3. XProtect: Sistema antivírus integrado que detecta malware.
4. Sandboxing: Isola aplicativos para minimizar os danos de vulnerabilidades.
Configuração de Segurança Recomendadas:
Ativar o FileVault:
sudo fdesetup enable
Configurar Firewall:
Ative em Preferências do Sistema > Segurança e Privacidade > Firewall.
Ative a opção "Bloquear todas as conexões de entrada".
Ferramentas de Cibersegurança no macOS
1. nmap: Para análise de redes.
Instale via Homebrew:
brew install nmap
2. Wireshark: Monitoramento de tráfego de rede.
brew install wireshark
3. Metasploit Framework: Testes de penetração.
brew install metasploit
4. Burp Suite: Análise de segurança web.
5. ClamAV: Antivírus open-source.
brew install clamav
Comandos Úteis no Terminal
1. Informações do Sistema:
system_profiler
2. Gerenciamento de Processos:
ps aux | grep [processo]
3. Verificação de Atualizações:
softwareupdate -l
4. Alterar Permissões:
chmod 700 [arquivo]
Importância do macOS na Cibersegurança
O macOS é amplamente usado por especialistas em cibersegurança devido à sua arquitetura baseada em Unix, suporte a ferramentas avançadas e atualizações regulares.
Sua combinação de facilidade de uso e segurança robusta o torna uma escolha confiável para auditorias de sistemas e desenvolvimento seguro.
Aqui estão exemplos práticos de comandos e scripts no Bash usando o macOS. Todos esses comandos podem ser executados no Terminal do macOS.
Exemplos Práticos com Bash
1. Navegação no Sistema de Arquivos
Exibir o diretório atual:
pwd
Listar arquivos e diretórios (detalhado):
ls -l
Ir para um diretório específico:
cd /Users/SeuUsuario/Documents
Criar um novo diretório:
mkdir MeuDiretorio
Remover um arquivo ou diretório:
rm MeuArquivo.txt
rm -r MeuDiretorio
2. Gerenciamento de Arquivos
Copiar arquivos:
cp ArquivoOrigem.txt /Destino/
Mover arquivos:
mv ArquivoOrigem.txt /Destino/
Renomear arquivos:
mv AntigoNome.txt NovoNome.txt
Concatenar e visualizar conteúdo de arquivos:
cat Arquivo1.txt Arquivo2.txt
3. Monitoramento do Sistema
Monitorar processos em execução:
top
Exibir informações sobre uso de disco:
df -h
Ver uso de memória:
vm_stat
Procurar processos em execução (exemplo com "bash"):
ps aux | grep bash
4. Redirecionamento e Manipulação
Redirecionar saída para um arquivo:
ls -l > lista_arquivos.txt
Anexar saída a um arquivo existente:
echo "Nova linha de texto" >> lista_arquivos.txt
Combinar comandos com pipes (|):
ps aux | grep Safari
5. Automatização com Scripts
Exemplo: Script para Backup Salve o seguinte script em um arquivo chamado backup.sh:
#!/bin/bash
SOURCE="/Users/SeuUsuario/Documents"
DESTINATION="/Users/SeuUsuario/Backup"
if [ ! -d "$DESTINATION" ]; then
mkdir -p "$DESTINATION"
fi
cp -r "$SOURCE"/* "$DESTINATION"
echo "Backup concluído com sucesso!"
Torne o script executável e execute:
chmod +x backup.sh
6. Rede e Conectividade
Ping em um site:
ping -c 4 google.com
Obter endereço IP local:
ifconfig | grep "inet "
Verificar portas abertas:
lsof -i -P | grep LISTEN
7. Exemplo com Loops
Loop para renomear arquivos em lote:
for file in *.txt; do
mv "$file" "${file%.txt}_renomeado.txt"
done
8. Criptografia e Segurança
Criptografar um arquivo com OpenSSL:
openssl enc -aes-256-cbc -salt -in arquivo.txt -out arquivo_criptografado.txt
Descriptografar o arquivo:
openssl enc -aes-256-cbc -d -in arquivo_criptografado.txt -out arquivo_original.txt
9. Gerenciamento de Usuários
Adicionar um novo usuário:
sudo dscl . -create /Users/novoUsuario
sudo dscl . -passwd /Users/novoUsuario senha123
sudo dscl . -create /Users/novoUsuario UserShell /bin/bash
sudo dscl . -create /Users/novoUsuario NFSHomeDirectory /Users/novoUsuario
sudo createhomedir -c -u novoUsuario
Esses exemplos são apenas o ponto de partida.
No macOS, o Bash pode ser combinado com outras ferramentas do sistema, como AppleScript e comandos específicos do Unix.
Aqui estão exemplos práticos de como usar hashing no macOS combinado com outras ferramentas como AppleScript e comandos Unix para segurança, automação e processamento de dados.
1. Gerar Hashes com Ferramentas Unix
O macOS suporta diversas funções de hashing via comandos Unix como md5, shasum, e openssl.
Exemplo: Gerar Hashes de Arquivos
Gerar o hash MD5:
md5 arquivo.txt
Gerar hash SHA-256:
shasum -a 256 arquivo.txt
Gerar hash com OpenSSL:
openssl dgst -sha256 arquivo.txt
Uso Prático: Validar Integridade
Para verificar a integridade de um arquivo baixado:
1. Baixe o arquivo e o hash fornecido (ex.: arquivo.txt e arquivo.sha256).
2. Gere o hash localmente e compare:
shasum -a 256 arquivo.txt
cat arquivo.sha256
2. AppleScript com Hashes
O AppleScript pode ser combinado com comandos Unix para automatizar tarefas que envolvem hashing.
Exemplo: AppleScript para Gerar Hashes
Este script usa do shell script para executar comandos Unix e exibe o resultado.
set filePath to POSIX path of (choose file with prompt "Selecione um arquivo para calcular o hash")
set sha256Hash to do shell script "shasum -a 256 " & quoted form of filePath
display dialog "SHA-256 Hash do arquivo: " & sha256Hash
3. Automação com Bash e AppleScript
Automatizar o hash de múltiplos arquivos com Bash e AppleScript:
Exemplo: Script de Automação
1. Crie um arquivo hash_automation.sh com o seguinte conteúdo:
#!/bin/bash
OUTPUT_FILE="hashes.txt"
> $OUTPUT_FILE
for file in "$@"; do
HASH=$(shasum -a 256 "$file" | awk '{print $1}')
echo "Arquivo: $file | SHA-256: $HASH" >> $OUTPUT_FILE
done
echo "Hashes gerados em $OUTPUT_FILE"
2. Crie um AppleScript para escolher arquivos e executar o Bash:
set fileList to choose file with prompt "Selecione arquivos para gerar hashes" with multiple selections allowed
set filePaths to ""
repeat with fileItem in fileList
set filePaths to filePaths & POSIX path of fileItem & " "
end repeat
do shell script "/path/para/hash_automation.sh " & filePaths
display dialog "Hashes gerados com sucesso!"
4. Integrar Hash com Automator
Você pode criar fluxos de trabalho no Automator para integrar hashing com outras tarefas.
Exemplo: Fluxo de Trabalho para Hash
1. Abra o Automator e crie um "Aplicativo".
2. Adicione a ação "Executar Shell Script" com o seguinte conteúdo:
for file in "$@"; do
shasum -a 256 "$file" > "$file.hash"
done
3. Salve o aplicativo e arraste arquivos para ele.
Ele gerará arquivos .hash com os hashes correspondentes.
5. Combinação com Ferramentas de Segurança
Combine hashing com ferramentas como openssl para gerar hashes seguros e criptografia.
Exemplo: Hash e Criptografia
Gerar um hash SHA-256 e criptografar:
shasum -a 256 arquivo.txt | openssl enc -aes-256-cbc -salt -out arquivo_criptografado.txt
Descriptografar:
openssl enc -aes-256-cbc -d -in arquivo_criptografado.txt
6. Exemplo Avançado: Verificação de Integridade em Lote
Este exemplo combina Bash e AppleScript para verificar a integridade de múltiplos arquivos com base em hashes armazenados.
Script de Verificação
1. Crie um arquivo verificar_integridade.sh:
#!/bin/bash
HASHES_FILE=$1
while IFS= read -r line; do
HASH=$(echo "$line" | awk '{print $1}')
FILE=$(echo "$line" | awk '{print $2}')
LOCAL_HASH=$(shasum -a 256 "$FILE" | awk '{print $1}')
if [ "$HASH" == "$LOCAL_HASH" ]; then
echo "OK: $FILE"
else
echo "FALHA: $FILE"
fi
done < "$HASHES_FILE"
2. Crie um AppleScript para executar:
set hashFile to POSIX path of (choose file with prompt "Selecione o arquivo de hashes")
do shell script "/path/para/verificar_integridade.sh " & quoted form of hashFile
display dialog "Verificação concluída!"
Esses exemplos mostram como combinar hashing, AppleScript e comandos Unix no macOS para criar ferramentas personalizadas de segurança e automação.
Aqui estão exemplos avançados de scripts no macOS, com integração entre Bash, AppleScript e ferramentas de segurança. Esses exemplos são projetados para tarefas como monitoramento, auditorias, e verificações de integridade.
1. Monitoramento de Alterações em Arquivos
Objetivo:
Monitorar mudanças em um diretório usando hashes para detectar modificações.
Script Bash
#!/bin/bash
MONITOR_DIR="$1"
HASHES_FILE="$2"
# Gera hashes iniciais se não existirem
if [ ! -f "$HASHES_FILE" ]; then
echo "Gerando hashes iniciais..."
find "$MONITOR_DIR" -type f -exec shasum -a 256 {} \; > "$HASHES_FILE"
echo "Hashes salvos em $HASHES_FILE"
exit 0
fi
# Verifica alterações
echo "Verificando alterações..."
while IFS= read -r line; do
OLD_HASH=$(echo "$line" | awk '{print $1}')
FILE=$(echo "$line" | awk '{print $2}')
if [ -f "$FILE" ]; then
NEW_HASH=$(shasum -a 256 "$FILE" | awk '{print $1}')
if [ "$OLD_HASH" != "$NEW_HASH" ]; then
echo "Arquivo modificado: $FILE"
fi
else
echo "Arquivo removido: $FILE"
fi
done < "$HASHES_FILE"
# Adiciona novos arquivos
find "$MONITOR_DIR" -type f | while read -r file; do
if ! grep -q "$file" "$HASHES_FILE"; then
NEW_HASH=$(shasum -a 256 "$file" | awk '{print $1}')
echo "$NEW_HASH $file" >> "$HASHES_FILE"
echo "Novo arquivo adicionado: $file"
fi
done
Como Usar:
1. Salve o script como monitorar_arquivos.sh.
2. Execute:
chmod +x monitorar_arquivos.sh
./monitorar_arquivos.sh /caminho/para/diretorio hashes.txt
2. Auditoria de Rede com nmap
Objetivo:
Identificar portas abertas e serviços ativos na rede.
Script Bash
#!/bin/bash
NETWORK="$1"
OUTPUT_FILE="network_audit.txt"
echo "Iniciando auditoria na rede $NETWORK..."
nmap -sS -O -p- "$NETWORK" > "$OUTPUT_FILE"
echo "Auditoria concluída. Relatório salvo em $OUTPUT_FILE"
Como Usar:
1. Salve o script como auditoria_rede.sh.
2. Execute:
chmod +x auditoria_rede.sh
./auditoria_rede.sh 192.168.1.0/24
3. Escaneamento de Malware com ClamAV
Objetivo:
Escanear diretórios específicos em busca de malware.
Script Bash
#!/bin/bash
SCAN_DIR="$1"
LOG_FILE="malware_scan.log"
echo "Iniciando escaneamento de malware no diretório $SCAN_DIR..."
clamscan -r "$SCAN_DIR" --log="$LOG_FILE"
echo "Escaneamento concluído. Relatório salvo em $LOG_FILE"
Como Usar:
1. Instale o ClamAV:
brew install clamav
2. Execute o script:
chmod +x escanear_malware.sh
./escanear_malware.sh /caminho/para/escaneamento
4. Integração com AppleScript para Relatórios
Objetivo:
Usar AppleScript para criar notificações ou relatórios com os resultados de scripts.
AppleScript para Notificação
set logFile to POSIX path of (choose file with prompt "Selecione o arquivo de log")
set logContent to do shell script "cat " & quoted form of logFile
display dialog "Relatório do Escaneamento: " & logContent buttons {"OK"} default button "OK"
Como Usar:
1. Salve o AppleScript como um arquivo .scpt.
2. Combine com o script Bash para ler os resultados do log.
5. Ferramenta de Backup com Criptografia
Objetivo:
Criar backups criptografados usando tar e openssl.
Script Bash
#!/bin/bash
SOURCE_DIR="$1"
BACKUP_FILE="backup_$(date +%F).tar.gz"
ENCRYPTED_FILE="$BACKUP_FILE.enc"
PASSWORD="SuaSenhaForte"
echo "Criando backup do diretório $SOURCE_DIR..."
tar -czf "$BACKUP_FILE" "$SOURCE_DIR"
echo "Criptografando backup..."
openssl enc -aes-256-cbc -salt -in "$BACKUP_FILE" -out "$ENCRYPTED_FILE" -k "$PASSWORD"
rm "$BACKUP_FILE"
echo "Backup criptografado salvo em $ENCRYPTED_FILE"
Como Usar:
1. Salve o script como backup_criptografado.sh.
2. Execute:
chmod +x backup_criptografado.sh
./backup_criptografado.sh /caminho/para/diretorio
6. Sistema de Detecção de Intrusão (IDS) Básico
Objetivo:
Monitorar atividades suspeitas no sistema, como tentativas de login falhas.
Script Bash
#!/bin/bash
LOG_FILE="/var/log/system.log"
PATTERN="Failed password"
ALERT_FILE="intrusion_alerts.log"
echo "Monitorando atividades suspeitas..."
grep "$PATTERN" "$LOG_FILE" > "$ALERT_FILE"
if [ -s "$ALERT_FILE" ]; then
echo "Atividades suspeitas detectadas. Relatório salvo em $ALERT_FILE"
else
echo "Nenhuma atividade suspeita detectada."
fi
Como Usar:
1. Salve o script como ids_basico.sh.
2. Execute:
chmod +x ids_basico.sh
./ids_basico.sh
Esses exemplos combinam ferramentas de segurança (como nmap e ClamAV), comandos Unix, e AppleScript para criar soluções avançadas de monitoramento, auditoria e proteção.
O Terminal do macOS: Um Guia Prático
O Terminal é uma interface de linha de comando no macOS que permite aos usuários interagir diretamente com o sistema operacional por meio de comandos do Shell. Aqui, abordamos acesso, uso, e configurações do Shell, com exemplos práticos.
1. Acesso ao Terminal
1. Abrir o Terminal:
Use Spotlight (Cmd + Espaço), digite Terminal e pressione Enter.
Ou navegue para Aplicativos > Utilitários > Terminal.
2. Significado do Shell
O Shell é um interpretador de comandos que traduz os comandos digitados no Terminal para o sistema operacional.
O macOS usa o zsh como Shell padrão desde o macOS Catalina. Outros Shells disponíveis incluem bash, fish e tcsh.
Identificando o Shell Atual
echo $SHELL
Saída típica:
/bin/zsh
3. Formato de Comandos
Os comandos no Terminal seguem esta estrutura:
comando [opções] [argumentos]
comando: Nome do programa ou utilitário.
opções: Modificadores que alteram o comportamento do comando (ex.: -l para ls).
argumentos: Dados ou alvos do comando (ex.: o nome de um arquivo ou diretório).
Exemplo:
Listar arquivos com detalhes no diretório atual:
ls -l
4. Executar Comandos como Superusuário
Para executar comandos que exigem permissões administrativas, use sudo antes do comando. Você precisará inserir a senha do administrador.
Exemplo: Instalar um programa
sudo apt-get install nome_do_programa
Cuidado:
Com sudo, você tem permissões completas sobre o sistema, então use com precaução.
5. Alterar o Shell
Exibir Shells Disponíveis
cat /etc/shells
Mudar o Shell Temporariamente
Para mudar para o bash:
bash
Alterar o Shell Padrão Permanentemente
1. Liste os Shells disponíveis:
cat /etc/shells
2. Use o comando chsh para alterar:
chsh -s /bin/bash
3. Reinicie o Terminal para aplicar.
6. Alterar o Nome da Máquina
O nome da máquina é como o sistema identifica seu computador na rede.
Alterar Temporariamente (até reiniciar)
Use o comando:
sudo scutil --set HostName NomeTemporario
Exemplo:
sudo scutil --set HostName MeuMac
Alterar Permanentemente
1. Alterar o nome do HostName:
sudo scutil --set HostName NomePermanente
2. Alterar o nome local (visível na rede local):
sudo scutil --set LocalHostName NomePermanente
3. Alterar o nome do computador (para exibição no Finder):
sudo scutil --set ComputerName NomePermanente
4. Reinicie o Mac para aplicar.
7. Exemplos Práticos
7.1. Criar e Navegar em Diretórios
Criar um diretório chamado Projetos e entrar nele:
mkdir Projetos
cd Projetos
7.2. Exibir Informações do Sistema
Ver a versão do macOS:
sw_vers
7.3. Monitorar Processos
Exibir processos em execução:
ps aux
7.4. Gerenciar Usuários
Adicionar um novo usuário (com permissão):
sudo dscl . -create /Users/novoUsuario
sudo dscl . -passwd /Users/novoUsuario senhaForte123
Esses exemplos fornecem uma base sólida para começar a usar o Terminal no macOS, seja para tarefas administrativas ou automação.
Guia Completo do Terminal do macOS com Exemplos Práticos
Aqui está uma explicação detalhada, organizada por tópicos para fácil referência.
1. Sair do Sistema e Gerenciamento de Sessões
1.1. Sair com logout
Encerra a sessão atual do Terminal.
Usado em conexões SSH ou no Terminal.
Exemplo:
logout
1.2. Sair com exit
Fecha o Terminal ou termina um script em execução.
Exemplo:
exit
2. Desligar e Reiniciar o Sistema
2.1. Desligar imediatamente
sudo shutdown -h now
2.2. Reiniciar o sistema
sudo shutdown -r now
2.3. Desligar após um tempo determinado
sudo shutdown -h +10
Desliga o sistema em 10 minutos.
2.4. Desligar em uma hora específica
sudo shutdown -h 23:00
Desliga o sistema às 23h.
2.5. Cancelar um shutdown
sudo shutdown -c
3. Operações em Diretórios e Arquivos
3.1. Criar um diretório
mkdir novo_diretorio
3.2. Navegar entre diretórios
cd /caminho/para/diretorio
3.3. Copiar arquivos
cp origem.txt destino.txt
3.4. Mover ou renomear arquivos
mv arquivo.txt novo_diretorio/
3.5. Excluir arquivos ou diretórios
rm arquivo.txt
rm -r diretorio/
3.6. Listar arquivos
ls -l
4. Manipulação de Texto
4.1. Exibir conteúdo de arquivos
cat arquivo.txt
4.2. Exibir apenas as 10 primeiras linhas
head arquivo.txt
4.3. Exibir apenas as últimas linhas
tail arquivo.txt
4.4. Buscar por padrões de texto
grep "palavra" arquivo.txt
5. Comandos do Sistema
Ver versão do macOS:
sw_vers
Exibir espaço em disco:
df -h
Exibir uso de memória:
vm_stat
6. Gerenciamento de Processos
6.1. Listar processos
ps aux
6.2. Finalizar um processo
kill PID
7. Permissões e Propriedade
7.1. Alterar permissões
chmod 755 arquivo.txt
7.2. Alterar proprietário
chown usuario arquivo.txt
8. Gerenciamento de Usuários
Adicionar um novo usuário:
sudo dscl . -create /Users/novoUsuario
9. Comandos para Rede
9.1. Testar conectividade
ping google.com
9.2. Verificar interfaces de rede
ifconfig
10. Compactação e Backup
Compactar um diretório:
tar -czvf arquivo.tar.gz diretorio/
11. Sistema de Arquivos
Montar um volume:
mount
12. Analisar Desempenho
Monitorar o uso de CPU:
top
13. Hardware e Software
Informações de hardware:
system_profiler SPHardwareDataType
Informações de software:
system_profiler SPSoftwareDataType
14. Comando say
14.1. Passar uma frase
say "Olá, tudo bem?"
14.2. Passar um arquivo
say -f arquivo.txt
14.3. Escolher um locutor
say -v Victoria "Texto falado"
15. Comando mtls
Exibe metadados de arquivos:
mdls arquivo.txt
16. Comando mdfind
Pesquisa arquivos no sistema:
mdfind "nome do arquivo"
17. Comando units
Conversões matemáticas:
units "meters" "feet"
18. Comando yes
Repete uma palavra ou string:
yes "Sim"
19. Linguagem AWK
Exemplo Básico
Extrair a segunda coluna de um arquivo:
awk '{print $2}' arquivo.txt
Como funciona o script do Mac Shell?
O macOS é baseado em UNIX, o que torna mais fácil executar scripts de shell em dispositivos macOS do que em dispositivos Windows 10.
Para executar um script de shell do Mac, primeiro você terá que escrever o script no editor de texto, processador de texto ou interface gráfica do usuário (GUI).
Em seguida, usando a interface de linha de comando do seu dispositivo Mac chamada terminal, você precisará localizar a pasta na qual o seu script existe. Uma vez localizado, você precisará conceder permissão para a execução do script.
Melhores práticas para scripts de shell do macOS
O script Shell pode automatizar tarefas repetitivas no seu Mac, economizando tempo e esforço. Escrever bons scripts de shell para Mac envolve funcionalidade e legibilidade. Aqui estão algumas práticas recomendadas importantes a serem consideradas:
Escolhendo as ferramentas certas
Seleção de casca: Bash, um shell amplamente utilizado e com recursos abundantes, é uma ótima opção para iniciantes. Zsh oferece mais opções de personalização para usuários experientes.
Seleção do Editor: Embora um editor de texto básico seja suficiente, considere opções ricas em recursos como BBedit, VS Code, Vim ou Sublime Text. Esses editores oferecem destaque de sintaxe, verificação de erros e preenchimento automático, tornando o processo de script mais suave.
Escrevendo scripts claros e concisos
Comentando seu código: Adicione comentários para explicar a finalidade das diferentes seções do seu script. Consulte os guias de estilo de script de shell existentes para convenções de comentários.
Nomes de variáveis significativos: Use nomes descritivos que reflitam o propósito da variável (por exemplo, número_de_arquivo em vez de x). Isso melhora a legibilidade do código.
Tratamento de erros e robustez
Validação de entrada: Use comandos como instruções if para verificar se o script recebeu a entrada esperada. Isso ajuda a evitar erros.
Verificação de erros: Use comandos como exit com códigos de saída apropriados para indicar erros. Isso ajuda na solução de problemas.
Considerações de Segurança
Uso cauteloso do sudo: Evite usar sudo excessivamente. Se necessário, use sudo -S para solicitar a senha com segurança.
Sanitizando a entrada do usuário: Se o seu script aceitar entrada do usuário, limpe-o para evitar vulnerabilidades de segurança, como injeção de código
Seguindo essas práticas recomendadas, você pode escrever scripts de shell para Mac que sejam eficientes, fáceis de manter e seguros.
Shell Scripts vs. Comandos de Terminal: Qual é a diferença?
Os scripts shell e os comandos de terminal interagem com o sistema operacional do computador por meio de um shell, mas têm finalidades diferentes.
Comandos de terminal são instruções únicas executadas em tempo real em uma interface de linha de comando, usadas para tarefas imediatas, como manipulação de arquivos.
Os scripts shell, entretanto, são arquivos que contêm uma série de comandos executados como um programa, permitindo que operações complexas, automação de tarefas e procedimentos repetitivos sejam executados sem entrada manual para cada comando.
O que são conchas?
Um shell funciona como um interpretador de linha de comando exclusivo, permitindo a interação com o kernel do sistema por meio da execução de comandos. Em essência, ele processa seus comandos textuais, traduz-os em uma linguagem de programação e os comunica ao sistema operacional para execução.
O shell padrão em um Mac varia de acordo com a versão do macOS instalada. Para macOS Mojave e versões anteriores, bash (Bourne-again Shell) é o shell padrão. Por outro lado, a partir do macOS Catalina e nas versões subsequentes, zsh (Z shell) se torna o shell padrão.
Scripts Bash vs. Scripts Zsh: Compreendendo a diferença
Bash e zsh pertencem à família Bourne Shell, compartilhando muitas funcionalidades básicas. No entanto, existem pequenas distinções entre as duas conchas. Os scripts Bash pertencem à família de shells Bourne e são escritos na linguagem de programação bash.
Anteriormente, o bash era o shell padrão do macOS. É bastante simples de executar e geralmente é usado para administração de sistema, backups automatizados, implantação de aplicativos da web, etc.
Após a introdução do Catalina, a Apple mudou seu shell padrão de bash para zsh (z shell). Zshell é uma versão estendida da família Bourne de shells e oferece recursos, temas e plug-ins aprimorados.
Além disso, o bash desfruta de uma adoção mais ampla entre os administradores de TI, ostentando extensos recursos e documentação de suporte, tornando-o uma excelente escolha para iniciantes.
Já o zsh é reconhecido por sua extensibilidade, opções robustas de personalização e recursos diferenciados. Assim, a seleção do shell apropriado é amplamente influenciada pelas preferências individuais do usuário.
O macOS possui alternativas ao Microsoft Office que podem atender tanto a usuários domésticos quanto empresariais. Aqui estão as principais opções:
1. Programas Similares ao Microsoft Office no macOS
1.1. Microsoft Office para macOS
A própria Microsoft oferece o Microsoft Office para macOS, incluindo:
Word (processador de texto)
Excel (planilhas)
PowerPoint (apresentações)
Outlook (email e calendário)
Teams (colaboração e videoconferências)
OneNote (notas)
Total compatibilidade com arquivos criados no Office para Windows.
Licenças:
Microsoft 365 (Assinatura):
Plano Pessoal: Para uso individual. Inclui 1 TB de armazenamento no OneDrive e acesso a todos os aplicativos do Office.
Plano Familiar: Até 6 usuários com acesso aos aplicativos e armazenamento no OneDrive.
Plano Empresarial: Recursos adicionais para colaboração em equipe, segurança aprimorada e ferramentas de gerenciamento.
Licença Permanente: Opção de compra única, mas com menos recursos e sem atualizações contínuas.
1.2. Apple iWork (Grátis no macOS)
Pages: Alternativa ao Word.
Numbers: Alternativa ao Excel.
Keynote: Alternativa ao PowerPoint.
Totalmente integrado ao ecossistema Apple, com suporte ao iCloud para sincronização entre dispositivos.
Características:
Compatível com arquivos do Microsoft Office (docx, xlsx, pptx).
Licença gratuita para uso doméstico e comercial.
Design moderno, ideal para apresentações visuais.
1.3. Google Workspace (Baseado na Web)
Docs: Alternativa ao Word.
Sheets: Alternativa ao Excel.
Slides: Alternativa ao PowerPoint.
Características:
Gratuito para uso pessoal com conta do Google.
Planos empresariais disponíveis para equipes, com segurança e armazenamento adicionais.
Funciona diretamente no navegador, com integração ao Google Drive.
1.4. LibreOffice (Gratuito e Open Source)
Conjunto completo de ferramentas, como:
Writer: Processador de texto.
Calc: Planilhas.
Impress: Apresentações.
Características:
Suporte nativo a formatos do Microsoft Office.
Licença de código aberto (GPL), ideal para quem busca uma alternativa gratuita.
2. Licenças de Uso Doméstico e Empresarial
Microsoft Office:
1. Uso Doméstico:
Microsoft 365 Pessoal: Uso para 1 pessoa, sem fins lucrativos.
Licença inclui armazenamento no OneDrive e uso em vários dispositivos.
2. Uso Empresarial:
Microsoft 365 Business: Ferramentas adicionais de segurança, colaboração e gerenciamento.
Licenças são baseadas em assinaturas por usuário/mês, com diferentes níveis de serviço.
Apple iWork:
Gratuito tanto para uso pessoal quanto comercial.
Nenhuma restrição em relação ao tipo de uso.
Google Workspace:
1. Uso Pessoal:
Gratuito para contas individuais.
Recursos limitados, mas úteis para uso doméstico.
2. Uso Empresarial:
Planos pagos (a partir de $6 por usuário/mês), com maior capacidade de armazenamento, suporte e ferramentas de segurança.
LibreOffice:
Gratuito para uso doméstico e empresarial.
Não oferece suporte técnico comercial, mas há uma comunidade ativa para ajuda.
Resumo das Opções:
Segue o resumo das opções apresentadas em texto corrente para facilitar o entendimento:
O Microsoft Office está disponível para macOS como uma solução paga. Para uso pessoal, pode ser adquirido por assinatura através do plano Microsoft 365 Pessoal ou como uma licença permanente (compra única).
Para empresas, o Microsoft 365 oferece planos específicos que incluem ferramentas avançadas de segurança, colaboração e gerenciamento.
Todos os formatos do Office são totalmente compatíveis com a versão Windows, e o armazenamento em nuvem é garantido via OneDrive.
O Apple iWork, que inclui os aplicativos Pages, Numbers e Keynote, é gratuito para todos os usuários de macOS. Pode ser utilizado tanto para uso pessoal quanto comercial, sem restrições.
Oferece integração com o iCloud para armazenamento e sincronização, além de suporte para formatos do Microsoft Office.
O Google Workspace, baseado na web, é gratuito para uso pessoal com contas do Google, mas oferece planos empresariais pagos a partir de $6 por usuário/mês.
É compatível com arquivos do Office e conta com o Google Drive para armazenamento e colaboração.
O LibreOffice é uma alternativa gratuita e de código aberto que suporta formatos do Microsoft Office.
É ideal tanto para uso doméstico quanto empresarial, sem custos, mas sem suporte técnico comercial. Não possui integração nativa com serviços de nuvem, mas pode ser usado com soluções externas.
Segue um Glossário explicativo com palavras, termos e expressões relacionados ao macOS:
A
AirDrop
Tecnologia da Apple que permite o compartilhamento rápido de arquivos entre dispositivos Apple próximos, utilizando Wi-Fi e Bluetooth.
App Store
Loja oficial de aplicativos para macOS, onde os usuários podem baixar e instalar softwares gratuitos ou pagos.
Automator
Ferramenta integrada ao macOS que permite criar fluxos de trabalho automatizados para simplificar tarefas repetitivas.
B
Boot Camp
Utilitário do macOS que permite instalar e usar o Windows em um Mac, configurando uma partição específica no disco.
Bundle
Pacote de arquivos que compõem um aplicativo no macOS. Os aplicativos geralmente aparecem como um único ícone, mas são "pastas" contendo seus componentes.
C
Command
Tecla "⌘" nos teclados da Apple, usada em atalhos como Command+C (copiar) ou Command+V (colar).
Control Center
Painel de controle do macOS, introduzido no macOS Big Sur, que permite acesso rápido a configurações como Wi-Fi, brilho e som.
Console
Aplicativo usado para visualizar logs do sistema, útil para diagnósticos e solução de problemas.
D
Dashboard
Recurso antigo do macOS (removido nas versões recentes) que exibia widgets, como calendário, calculadora e previsão do tempo.
Dock
Barra na parte inferior (ou lateral) da tela que oferece acesso rápido a aplicativos, arquivos e pastas.
Disk Utility
Ferramenta para gerenciar discos e volumes no macOS, usada para formatar, reparar ou verificar drives.
E
Exposé (Mission Control)
Função que permite visualizar todas as janelas abertas, áreas de trabalho e aplicativos em execução.
F
Finder
Gerenciador de arquivos do macOS, usado para navegar, organizar e gerenciar documentos, aplicativos e dispositivos.
FileVault
Sistema de criptografia nativo do macOS que protege o disco rígido contra acesso não autorizado.
H
Handoff
Funcionalidade que permite continuar tarefas entre dispositivos Apple, como editar um documento ou atender uma ligação iniciada em outro dispositivo.
Hot Corners
Configuração que permite atribuir ações específicas aos cantos da tela, como iniciar o protetor de tela ou abrir o Mission Control.
I
iCloud
Serviço de armazenamento em nuvem da Apple, que permite sincronizar arquivos, fotos e configurações entre dispositivos.
Installer
Ferramenta usada para instalar aplicativos e pacotes de software no macOS.
K
Keychain
Gerenciador de senhas integrado ao macOS, que armazena e gerencia credenciais de login, chaves criptográficas e certificados.
L
Launchpad
Tela semelhante à de um iPad, que exibe todos os aplicativos instalados no macOS para acesso rápido.
M
Mac App
Aplicativos desenvolvidos especificamente para o macOS.
Mission Control
Interface que exibe janelas abertas, áreas de trabalho e aplicativos em tela cheia.
N
Notification Center
Painel que exibe notificações e widgets, acessado no canto superior direito da tela.
P
Preferences
Configurações do sistema ou de aplicativos. No macOS, são acessadas através de "System Preferences" ou "Settings" (em versões mais recentes).
S
Spotlight
Ferramenta de busca integrada que permite localizar arquivos, aplicativos, emails e realizar cálculos ou buscas na web.
System Preferences (ou System Settings)
Painel de controle do macOS onde os usuários podem ajustar configurações do sistema, como redes, som e acessibilidade.
T
Terminal
Interface de linha de comando do macOS que permite executar comandos Unix para administrar o sistema.
Time Machine
Sistema de backup automático do macOS que cria cópias de segurança de arquivos e permite restaurar versões anteriores.
U
Universal Clipboard
Recurso que permite copiar conteúdo em um dispositivo Apple e colar em outro, como texto ou imagens.
W
Widgets
Pequenas ferramentas exibidas no Notification Center que fornecem informações rápidas, como previsão do tempo ou lembretes.