Escolar Documentos
Profissional Documentos
Cultura Documentos
Este curso de Shell Script, divido em duas partes, tem por objetivo mostrar os principais conceitos do Bash, seus comandos mais utilizados e a teoria
sobre como criar scripts Shell.
Não adianta querer programar usando Shell Script sem conhecer os comandos básicos do Linux (muitos também presentes no Mac OS X). Por isso
este primeiro módulo (que chamei de Módulo #0) de curso de Shell Script abordará os comandos básicos do Bash, que são fundamentais para a
construção dos scripts Shell.
Em seguida, no Módulo #1 deste Curso de Shell Script, vou mostrar como criar scripts Shell, aplicando os conhecimentos mostrados aqui no Módulo
#0.
NOTA: O conteúdo deste post foi aprimorado e somado a diversos outros temas ligados à Programação usando Shell Script. Tudo isso resultou no
curso “Shell Script Para Programadores“. Conheço melhor o curso neste link.
Este curso de Shell Script está dividiso em dois módulos. São eles:
Módulo #0: Comandos Básicos do Linux: este módulo, onde mostro quais são os principais comandos do Bash (utilizáveis em Linux e Mac OS
X)
Módulo #1: Scripts Shell e suas estruturas: segundo módulo, onde mostro como estruturar scripts Shell, usando o conhecimento do Módulo
#0 do Curso de Shell Script
Neste primeiro módulo, vamos analisar alguns comandos do Bash, os mais conhecidos e usados, juntamente com algumas de suas opções. A maioria
dos comandos permitem o uso de inúmeras opções, não sendo possível abordar todos elas neste texto.
Antes de iniciarmos, vale lembrar que os manuais de todos os comandos podem ser lidos usando o comando man nome_do_comando, por exemplo:
$ man echo
A maioria dos comandos também têm a opção -h, ou –help, que lista os parâmetros aceitos pelo programa.
Os comandos estão ordenados alfabeticamente, sem levar em consideração relevância ou complexidade de utilização.
Sumário
awk
cat
cd
chmod
cut
date
di
echo
nd
grep
head
kill
ls
printf
rev
scp
sed
seq
sort
ssh
tac
tail
top
awk
Este trecho do artigo está disponível apenas para alunos do meu curso Shell Script Para Programadores. Para conhecer melhor o curso e fazer sua
matrícula, clique aqui
cat
Opções:
-n : numera as linhas
Exemplos:
$ cat /etc/hostname
orion
$ cat -n /etc/hostname
1 orion
cd
Exemplo:
$ cd /tmp
$ cd ~
chmod
Este trecho do artigo está disponível apenas para alunos do meu curso Shell Script Para Programadores. Para conhecer melhor o curso e fazer sua
matrícula, clique aqui
cut
Separa trechos ou campos de uma linha, por meio de um delimitador. Também trunca textos, exibindo apenas um número especí co de caracteres.
Opções
-d : de ne o delimitador
-f : de ne o(s) campo(s) a ser(em) exibido(s)
-c : número do caractere a ser exibido ou intervalo de caracteres
Exemplos:
date
Mostra a data atual ou uma data especí ca, com diversas opções para formatação da data.
Opções:
-d : especi ca a data (Ex: tomorrow, 5 days ago)
+%? : de ne o padrão de formatação da data. A lista de opções pode ser lida no manual do comando (man date).
Exemplos:
$ date
Dom Mai 1 20:05:47 BRT 2011
$ date -d "yesterday"
Sáb Abr 30 20:05:59 BRT 2011
$ date +"%d/%m/%Y"
01/05/2011
di
Este trecho do artigo está disponível apenas para alunos do meu curso Shell Script Para Programadores. Para conhecer melhor o curso e fazer sua
matrícula, clique aqui
echo
Opções:
-n : não pula linha no nal do texto
-e : interpreta caracteres de escape
Exemplos:
[cta id=’925′]
nd
Este trecho do artigo está disponível apenas para alunos do meu curso Shell Script Para Programadores. Para conhecer melhor o curso e fazer sua
matrícula, clique aqui
grep
Este trecho do artigo está disponível apenas para alunos do meu curso Shell Script Para Programadores. Para conhecer melhor o curso e fazer sua
matrícula, clique aqui
head
Mostra o início de um arquivo. O limite pode ser estabelecido em número de linhas ou caracteres. É o inverso do comando tail.
Opções:
-n N : exibe as N primeiras linhas
-c N : exibe os N primeiros caracteres
Exemplos:
kill
O comando kill “mata” processos, ou seja, encerra, ou força o encerramento, de um programa.
Opções:
-9 : força o encerramento da execução de um processo
-1 : mata todos os processos que o usuário pode matar
Exemplos:
$ kill -9 1234
$ kill -1 -9
Os IDs dos processos (PID – Process ID) podem ser encontrados usando o comando ps, que é o gerenciador de processos. Com as opções “ux”, listam-
se os processos do usuário. Com grep podemos ltrar a saída pelo processo desejado:
$ ps ux | grep skype
beraldo 2267 1.0 2.0 281508 82968 ? Sl 09:58 0:41 skype
beraldo 5672 0.0 0.0 10128 848 pts/0 S+ 11:04 0:00 grep --color=auto skype
$ kill -9 2267
Como lição de casa, vale ler os manuais dos comandos killall e pkill. :)
ls
Opções:
-a : lista arquivos e diretórios ocultos
-l : mostra diversos atributos dos arquivos e diretórios, como data de criação, dono, permissões etc
-R : lista o conteúdo recursivamente
Exemplos:
$ ls
$ ls -a
$ ls -l
$ ls -la
$ ls -laR
printf
Exibe um texto na tela, com várias opções de formatação, semelhante à função printf(), da linguagem C.
As opções de formatação são praticamente as mesmas da linguagem C. A lista completa pode ser vista no manual (man printf).
Exemplos:
$ printf "%x\n" 15
f
$ printf "%o\n" 7
7
$ printf "%o\n" 8
10
$ printf "%05d\n" 70
00070
$ printf "%.2f\n" 70
70,00
rev
Exemplos:
scp
Copia arquivos e diretórios via ssh, ou seja, cópia segura entre máquinas remotas.
Opções:
-r : cópia recursiva
Sintaxe:
Exemplos:
$ scp 192.168.0.100:~/arquivo.txt .
sed
Linguagem para edição de arquivos e textos. Veja um post exclusivo a ela aqui:
http://www.rberaldo.com.br/blog/o-comando-sed-do-linux/
seq
Opções:
-s : separador (padrão “\n”)
-f : formato (padrão “%g”)
Exemplos:
$ seq 3
1
2
3
$ seq 3 5
3
4
5
$ seq 3 2 10
3
5
7
9
$ seq 10 -2 0
10
8
6
4
2
0
$ seq -s, 10 -2 0
10,8,6,4,2,0
sort
Opções:
-n : ordena numericamente
-r : ordena inversamente (de Z para A e de 9 para 1)
-f : case-insensitive
-k N : ordena pela coluna N do texto
-t : separador de coluna para a opção -k (padrão TAB)
-o : de ne um arquivo para a saída do comando
Exemplos:
ssh
O SSH (Secure Shell) realiza acesso remoto a outras máquinas Linux. Um post exclusivo a SSH pode ser lido aqui:
http://www.rberaldo.com.br/blog/usando-o-ssh
tac
tail
top
O comando top exibe os processos atualmente em execução. É semelhante ao ps, citado na seção do comando kill, mas atualiza-se automaticamente,
além de possuir várias opções de ordenação.
Exemplo:
$ top
O comando “htop” é mais completo e user-friendly, mas normalmente não vem instalado nas distros Linux. É possível instalá-lo via gerenciador de
pacotes. Por exemplo, em sistemas baseados em Debian:
Após conhecer os comandos básicos, é possível juntar vários deles e montar scripts. Veja o Módulo #1 do Curso de Shell Script, onde mostro como
criar Shell Scripts. No Módulo #1 eu abordo as estruturas usadas em Shell Script, variáveis de ambiente e diversas outras técnicas avançadas para criar
Shell Scripts.
Para aprender mais sobre Comandos Linux e Shell Script, veja meu curso Shell Script Para Programadores.
Roberto Beraldo
Graduado em Ciência da Computação, pela Universidade Federal do Paraná (UFPR), é desenvolvedor de software desde 2008, com
foco em Desenvolvimento Web com PHP.
Relacionado
Composer: o gerenciador de Como Atualizar Scripts PHP de MySQL Enviando E-Mails com a Classe PHPMailer
dependências para PHP Para MySQLi 26/01/2011
11/06/2015 29/10/2015 Em "PHP"
Em "Dicas" Em "MySQL"
Este post foi publicado em Linux, Programação, Shell Script (Bash) e marcado com a tag Bash, comandos, curso, Linux, script, Shell, Tutorial, unix em
06/05/2011 [http://rberaldo.com.br/curso-shell-script-comandos-basicos-linux/] .
Arktec Guarda
Documentos
Consultoria grátis
Ark Tec