Você está na página 1de 30

Abordagem

Uma tabela de comandos


Similares em shell GNU/Linux de comandos
cmd.exe do MS-Windows
Primeira viso
H. G. Fernandes
1
1
Faculdade Sumar
Cursos de Tecnologias da Informao e Comunicao, 2014
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Outline
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Putting it all together
A importncia da repetio
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Putting it all together
A importncia da repetio
Livros americanos tm abordagem aparentemente
cotica:
Listam cada vez mais informaes. . .
. . . aparentemente sem ordem alguma.
Mas a surge a seo Putting it all together.
Ou Juntando as coisas, ou Juntando tudo.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Putting it all together
A importncia da repetio
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Putting it all together
A importncia da repetio
Alguns conceitos so muito abstratos ou profundos
Qualquer ser humano normal vai demorar para
entend-los.
Alguns conceitos so interrelacionados
Em um primeiro momento, conseguimos ver apenas parte
das relaes.
Portanto, hoje em dia normal aprender e aprender de
novo.
Estamos nos tempos da educao continuada.
Principalmente na rea de informtica, nunca paramos de
aprender.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Unix, grande inuncia
O sistema operacional Unix, criado na dcada de 1970, por
uma equipe de gnios do Bell Labs. O poder e a simplicidade
dos conceitos presentes nele inuenciaram todos sistemas
operacionais subsequentes, e a prpria teoria dos sistemas
operacionais.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Relaes de sistemas operacionais atuais com Unix
GNU/Linux Apple IOS Microsoft
Windows
Unix
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
A tabela mostra que os 3 sistemas operacionais mais usados
atualmente devem muito ao Unix. Mas o Microsoft Windows
tem se distanciado dessa herana.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Um shell envolve o sistema operacional
Figura: Imagem de
http://web.stanford.edu/~rjweiss/public_html/IRiSS2013/shell/#16 H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Um shell envolve o sistema operacional(cont.)
O kernel, ou ncleo, a parte mais interna do sistema
operacional. Ele tem todo acesso ao hardware do computador,
mas para que se comunique com o usurio necessrio ter
outro software, chamado shell, porque envolve o ncleo.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Exemplos de shell
Um shell pode ser grco, como o caso do Microsoft
Windows Explorer;
No modo texto (ou no grco), o shell cmd.exe
chamado de Prompt de comandos no Microsoft
Windows;
H vrios shells grcos para sistemas GNU/Linux. Mas,
no modo texto, o mais comum o chamado bash;
bash, ou Bourne Again shell, uma extenso do Bourne
Shell (ou sh), tambm muito usado.
O mesmo shell pode ser adaptado a vrios sistemas
operacionais. De fato, h bash para Microsoft-Windows.
Cygwin excelente ambiente para aprender sistemas
operacionais derivados do Unix sob Microsoft Windows
http://cygwin.com
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Nas tabelas a seguir, os comandos so mostrados de
modo simplicado. O objetivo apenas fornecer uma
ponte intuitiva entre comandos conhecidos no cmd.exe e
aqueles do shell bash.
Tambm mostrado o uso comum de nomes de arquivos:
no GNU/Linux, tende-se a usar nomes padronizados para
vrios diretrios. E as mnsculas so muito mais usadas
que as maisculas.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Sobre o prompt de comandos
A palavra prompt tem mesmo o signicado de pronto.
o cursor piscando na linha de comando dos shells em
modo texto.
No MS-Windows, sob cmd.exe, o prompt pode ser algo
como
C:\Users\Aluno\Fontes\Python>
No GNU/Linux, sob bash, o prompt pode ser algo como
aluno@computador:/src/python$
Diz-se que o caracter de prompt aquele a partir de onde
comea o texto do usurio.
Assim, em GNU/Linux ele $ e em MS-Windows, ele
>.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Volumes e sistemas de arquivos
Supondo um PC convencional com HD, disco de CD-ROM e
um pendrive.
Dispositivo Possveis nomes
MS-Windows GNU/Linux
HD C: /
CD-ROM D: /media/cdrom
pendrive E: /media/F958-CEDD
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Sobre volumes
Um pacote de informaes, ou uma mdia, chamado
volume em computao;
No MS-Windows, os volumes so distintos uns dos outros;
no GNU-Linux, so ligados ao volume de boot.
No MS-Windows, cada volume tem seu diretrio raiz; no
GNU-Linux, apenas aquele de boot.
O separador de diretrios sob MS-Windows a
contra-barra (ou \); no GNU/Linux, ele a barra normal
de diviso, ou /;
O processo de tornar um volume acessvel chamado de
montar no GNU/Linux.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Sobre sistemas de arquivos
A maneira pela qual as informaes so organizadas em
um volume chamada sistema de arquivos;
Um dos sistemas de arquivos mais simples (e por isso
muito limitado) chamado FAT32;
Um sistema de arquivos mais sosticado para
MS-Windows o NTFS, iniciais de NT lesystem;
Em GNU-Linux, um dos sistemas mais comuns o ext4.
A maior parte dos sistemas de arquivo para GNU-Linux,
case sensitive: A.txt e a.txt so dois nomes diferentes.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Comandos simples para arquivos
Funo cmd.exe bash
Cpia copy A.txt B.txt cp a.txt b.txt
Movimentao move A.txt B.txt mv a.txt b.txt
Remoo del A.txt rm a.txt
Exibio type A.txt cat a.txt
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Comandos simples para diretrios
Funo cmd.exe bash
Listagem detalhada dir Fontes ls -l src
Listagem concisa dir /b Fontes ls src
Criao md Fontes mkdir src
Remoo rd Fontes rmdir src
Apenas para di-
retrios vazios.
Apenas para di-
retrios vazios.
Mudana cd Fontes cd src
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Agenda
1
Abordagem
Putting it all together
A importncia da repetio
2
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Sobre arquivos e sistemas operacionais
No dia a dia, um arquivo um repositrio passivo de
papeis;
Mas, desde o Unix, um arquivo qualquer via de
comunicao;
Escrever em um arquivo em disco muito semelhante a
escrever em uma impressora;
que por sua vez tem sua escrita muito semelhante a
escrever na tela...
Assim, programadores s se interessam pelos detalhes de
um arquivo quando necessrio.
Por exemplo, escrever em negrito em uma impressora.
O que permite que os programas sejam muito exveis.
Por ex., o contedo a escrever em um relatrio, ou em uma
pgina Web semelhante, mudando apenas os detalhes
da formatao.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Programas e sua comunicao padro
Quando disparado, um programa recebe do sistema
operacional (MS-Windows ou derivado do Unix), duas
formas de comunicao, mostradas na gura:
Normalmente, a entrada padro associada ao teclado e
a sada padro associada tela;
Seus nomes so stdin (de standard input ) e stdout
(de standard output )
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
O que redireo?
A gura abaixo mostra duas redirees:
A entrada padro foi redirecionada para um arquivo em
disco, em vez do teclado;
A sada padro foi redirecionada para um arquivo em
disco, em vez da tela.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Alguns exemplos de redireo
Uma vez que a redireo est presente em MS-Windows e
em GNU/Linux, seguem alguns exemplos em ambos:
Tipo Comando
Sada padro
MS-Windows dir /b Fontes > Fontes.dir
GNU/Linux ls src > src.dir
Entrada padro
MS-Windows sort < Fontes.dir
GNU/Linux sort < src.dir
Entrada e sada padro
MS-Windows sort < Fontes.dir > Fontes.sort
GNU/Linux sort < src.dir > src.sort
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Explicando os comandos com redireo
1
A redireo da sada padro representada por >,
sugerindo que os dados saem do programa;
2
A redireo da entrada padro representada por <,
sugerindo que os dados entram no programa;
3
Como os comandos dir e ls no fazem nenhuma
formatao, sua sada como um arquivo de texto. Assim,
a extenso dos arquivos gerados por eles na redireo
poderia ser .txt;
4
IMPORTANTE: Os nomes dos arquivos redirecionados
podem ser quaisquer. Naturalmente, melhor usar nomes
signicativos.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
A canalizao, ou pipeline
Uma canalizao, ou pipeline pode ser resumida na gura
Ou seja: a sada padro de um programa 1 anterior e a
entrada padro de um programa 2 posterior so ajustadas,
atravs de sua redireo.
Similar s canalizaes de gua, os pipelines podem
conter dezenas de programas conectados deste modo.
H. G. Fernandes Similares em Linux de comandos do Windows
Abordagem
Uma tabela de comandos
Histria mnima dos sistemas operacionais
Palavras de advertncia
Tabelas simplicadas de comandos em dois SO
O conceito de redireo
Para que servem as canalizaes, ou pipelines ?
Os sistemas operacionais derivados do Unix costumam ter
muitas ferramentas para manipulao de texto: awk,
grep, cut, sed etc.
Alm disso, programas mais genricos (ls, find, sort
etc.) seguem padres prximos e compatveis com eles.
Assim, os pipelines permitem fazer grandes
transformaes nos dados de sada de um programa,
permitindo ajust-los aos formatos de outros.
O uso prtico e simplicado dos pipelines ou canalizaes
merece um estudo parte.
H. G. Fernandes Similares em Linux de comandos do Windows

Você também pode gostar