| Oque é Shell Script?
O Shell Script são comandos Shell utilizados em um Script criado para automatizar o trabalho do programador, podendo melhorar em até 90% o trabalho que seria feito ao utilizar comandos isoladamente no sistema Linux, evitando perca de tempo e eliminando as chances de erros que eventualmente poderia acontecer ao usuário. Para entender oque é e como funciona é preciso entender como funciona primeiramente um ambiente em camadas Linux, para isso imagine que o hardware é a primeira fatia desta camada, é o centro, que é formada por componentes físicos do seu computador. Em torno dela, vem à camada do kernel, que é o cerne do Linux, seu núcleo, e é quem põe o hardware para funcionar, o gerenciando e controlando. Os programas e comandos que envolvem o kernel se utilizam dele para realizar diversas tarefas para as quais foram desenvolvidas. Por ultimo, vem o Shell, que tem este nome porque, em inglês, Shell significa concha, isto é, fica entre o usuário e o sistema operacional, de forma com que tudo que precise interagir com o sistema operacional tem que passar pelo seu crivo.
Click em mais informações e continue lendo a postagem.
O Shell é o primeiro programa que você visualiza ao iniciar uma sessão no Linux. É ele quem vai resolver um monte de coisas de forma a não ocupar o kernel com tarefas repetitivas, poupando-o para tratar de assuntos mais nobres. Cada usuário possui o seu próprio Shell interpondo-se entre ele e o Linux, é o Shell quem interpreta os comandos digitados e examina as suas sintaxes, passando-os esmiuçados para execução. Existem diversos tipos de Shell hoje em dia, porem existe quatro tipos que são tratados como os principais, e cada um deles trás consigo uma peculiaridade. Entre eles estão:
Bourne Shell (sh): Desenvolvido por Stepehn Bourne do Bell Labs (da AT&T, onde também foi desenvolvido o Unix), foi durante muitos anos o Shell, padrão de todos os sistemas operacionais UNIX. É também chamado de Standard Shell por ter sido durante vários anos o único, e até hoje o mais utilizado.
Korn Shell (ksh): Desenvolvido por David Korn, também do Bell Labs, é um superconjunto do sh, isto é, possui todas as facilidades do sh e a elas agregou muitas outras. A compatibilidade total com o sh vem trazendo muitos usuários e programadores de Shell para este ambiente. Bourne Again Shell (bash): Desenvolvido inicialmente por Brian Fox e Chet Ramey, este é o shell do projeto GNU. O numero de seus adeptos é o que mais cresce em todo mundo, seja por ser ele o Shell padrão do Linux, seja por grande diversidade de comandos, que incorpora inclusive diversos comandos característicos do C Shell.
C Shell (csh): Desenvolvido por Bill Joy, da universidade de Berkley, é o Shell mais utilizado em ambientes BSD. Foi ele quem introduziu o histórico de comandos. A estruturação de seus comandos é bem similar à linguagem C. Seu grande pecado foi ignorar a compatibilidade com o sh, partindo seu caminho próprio.
Acredito que para está primeira parte já seja o suficiente, vou deixar agora alguns comandos importante que podem ser utilizados a quem ficar interessado no assunto, em breve postarei a parte dois de Shell Script, com alguns Scripts comentados para ajudar no aprendizado.
Comandos de Controlo e Acesso |
|
|
exit | Termina a sessão, ou seja, a shell |
logout | Deslogar, ou seja, terminar a sessão atual, mas apenas na C shell e na bash shell. |
passwd | Mudar a password do nosso utilizador. |
rlogin | Logar de forma segura noutro sistema Unix/Linux. |
ssh | Sessão segura, vem de secure shell, e permite-nos logar num servidor através do protocolo ssh. |
slogin | Versão segura do rlogin. |
yppasswd | Mudar a password do nosso utilizador nas páginas amarelas (yellow pages). |
Comandos de Comunicações |
|
|
mail | Enviar e receber e-mails. |
mesg | Permitir ou negar mensagens de terminal e pedidos de conversação (talk requests). |
pine | Outra forma de enviar e receber e-mails, uma ferramenta rápida e prática. |
talk | Falar com outros utilizadores que estejam logados no momento. |
write | Escrever para outros utilizadores que estejam logados no momento. |
Comandos de Ajuda e Documentação |
|
|
apropos | Localiza comandos por pesquisa de palavra-chave. |
find | Localizar ficheiros, como por exemplo: find . -name *.txt -print, para pesquisa de ficheiros de texto por entre os ficheiros da diretório atual. |
info | Lança o explorador de informações. |
man | Manual muito completo, pesquisa informação acerca de todos os comandos que necessitemos de saber, como por exemplo, man find. |
whatis | Descreve o que um determinado comando é. |
whereis | Localizar a página de ajuda (man page), código fonte, ou ficheiros binários, de um determinado programa |
Comandos de Edição de Texto |
|
|
emacs | Editor de texto screen-oriented. |
pico | Editor de texto screen-oriented, também chamado de nano. |
sed nedit gedit | Editor de texto stream-oriented. Editor de texto stream-oriented. Editor de texto stream-oriented. |
vi | Editor de texto full-screen. |
vim | Editor de texto full-screen melhorado. |
Comandos de Gerenciamento de Ficheiros e Diretórios |
|
|
cd | Muda de diretório atual, como por exemplo, cd diretório, cd .., cd /. |
chmod | Muda a proteção de um ficheiro ou diretório, como por exemplo, chmod 777, parecido com o attrib do MS-DOS. |
chown | Mudar o dono ou grupo de um ficheiro ou diretório vem de change owner. |
chgrp | Mudar o grupo de um ficheiro ou diretório. |
cmp | Compara dois ficheiros. |
comm | Seleciona ou rejeita linhas comuns a dois ficheiros selecionados. |
cp | Copia ficheiros, como o copy do MS-DOS. |
|
|
diff | Compara o conteúdo de dois ficheiros ASCII. |
file | Determina o tipo de ficheiro. |
grep | Procura um ficheiro por um padrão, sendo um filtro muito útil e usado, por exemplo, um cat a.txt | grep ola irá mostrar-nos apenas as linhas do ficheiro a.txt que contenham a palavra “olá”. |
gzip | Comprime ou expande ficheiros |
ln | Cria um link a um ficheiro |
ls | Lista o conteúdo de um diretório, semelhante ao comando dir no MS-DOS. |
lsof | Lista os ficheiros abertos, vem de list open files. |
mkdir | Cria um diretório, vem de make directory. |
mv | Move ou renomeia ficheiros ou directorias |
pwd | Mostra-nos o caminho por inteiro da diretório em que nos encontramos em dado momento, ou seja, a pathname. |
quota | Mostra-nos o uso do disco e os limites |
rm | Apaga ficheiros, vem de remove, e é semelhante ao comando del no MS-DOS, é preciso ter cuidado com o comando rm * pois apaga tudo sem confirmação por defeito. |
rmdir | Apaga diretório, vem de remove directory. |
stat | Mostra o estado de um ficheiro, útil para saber, por exemplo, a hora e data do último acesso ao mesmo. |
sync | Faz um flush aos buffers do sistema de ficheiros, sincroniza os dados no disco com a memória, ou seja, escreve todos os dados presentes nos buffers da memória para o disco. |
sort | Ordena, une ou compara texto, podendo ser usado para extrair informações dos ficheiros de texto ou mesmo para ordenar dados de outros comandos como, por exemplo, listar ficheiros ordenados pelo nome. |
tar | Cria ou extrai arquivos, muito usado como programa de backup ou compressão de ficheiros. |
tee | Copia o input para um standard output e outros ficheiros |
tr | Traduz caracteres |
umask | Muda as proteções de ficheiros por defeito |
uncompress | Restaura um ficheiro comprimido |
uniq | Reporta ou apaga linhas repetidas num ficheiro |
wc | Conta linhas, palavras e mesmo caracteres num ficheiro. |
|
Postar um comentário