Mostrando postagens com marcador Shell. Mostrar todas as postagens
Mostrando postagens com marcador Shell. Mostrar todas as postagens

sexta-feira, 7 de fevereiro de 2014

Shell Script com Dialog - Dicas e Macetes :)

Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

Você pode encontrar todos os resumos de aula no link abaixo:

Estas aulas são dedicadas ao uso de Shell Script com o recurso Dialog.

"O Dialog é um programa usado para desenhar interfaces amigáveis para o usuário, com botões e menus, a partir de um Shell Script." (aurelio.net/shell/dialog)

Recomendo a leitura do melhor manual em português de DIALOG que existe: http://aurelio.net/shell/dialog/

Para usar o recurso de caixas com o dialog, é necessário que você o instale na sua distribuição.
Caso você use DEBIAN/MINT/UBUNTU e derivados, faça:

# apt-get install dialog
# yum install dialog

Caso você use REDHAT/FEDORA/CENTOS e derivados, faça:

Este é um exemplo peculiar.  Ao invés de ensinar os recursos do Dialog, vamos a algumas dicas.
Veja o exemplo em telas, depois vá ao código fonte e descubra como fazer.

Veja um exemplo mais completo utilizando o script abaixo que produz as seguintes telas:








Código Fonte do Script:

#!/bin/bash
##########################################################
# Scripts de Exemplo de Uso de Shell Script com Dialog   #
# Obs: Nao esqueca que para funcionar o pacote dialog    #
#      tem que estar instalado no seu S.O.               #
#                                                        #
# Autor: Dailson Fernandes - contato@dailson.com.br      #
# Licenca: GNU/GPL                                       #
##########################################################
# Exibe uma mensagem simples para o usuario.
# E espera que ele pressione enter.
dialog --msgbox "Algumas dicas ..." 6 30

# Obs: A barra invertida quebra a linha esteticamente,
#      Porem nao ha quebra no comando.


dialog --msgbox  "Mudando o nome dos Botoes" 0 0

# Mudando O nome dos Botoes
dialog --ok-label "Claro!" --msgbox "Voce e feio?"  0 0

dialog --colors --msgbox  "Voce tambem pode mudar a cor das mensagens
   \Z1 VERMELHO
   \Z2 VERDE
   \Z3 AMARELO
   \Z4 ROXO
   \Z5 MAGENTA
   \Z6 CIANO" 12 40

dialog --title "Mudando o Titulo da Caixa" --msgbox "Texto..." 0 0

dialog --msgbox  "Descobrindo se o usuario pressionou ESC" 0 0



if [ $? -eq 255 ]
then
   dialog --msgbox "Ei vei... Vc nao respondeu a pergunta" 0 0
fi

clear


Shell Script com Dialog - Usando o MSGBOX (dialog --msgobx)

Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

Você pode encontrar todos os resumos de aula no link abaixo:

Estas aulas são dedicadas ao uso de Shell Script com o recurso Dialog.

"O Dialog é um programa usado para desenhar interfaces amigáveis para o usuário, com botões e menus, a partir de um Shell Script." (aurelio.net/shell/dialog)

Recomendo a leitura do melhor manual em português de DIALOG que existe: http://aurelio.net/shell/dialog/

Para usar o recurso de caixas com o dialog, é necessário que você o instale na sua distribuição.
Caso você use DEBIAN/MINT/UBUNTU e derivados, faça:

# apt-get install dialog
# yum install dialog

Caso você use REDHAT/FEDORA/CENTOS e derivados, faça:

Este exemplo, usaremos o recurso msgbox, que exibe uma mensagem simples para o  usuário. Use esta caixa para informar o usuário e interagir com ele.

Você pode testar direto na linha de comando, ou usar um script.

Faça você mesmo:

# dialog --msgbox "Exibindo uma mensagem para o Usuario" 0 0

Veja um exemplo mais completo utilizando o script abaixo que produz as seguintes telas:


Código fonte do Script:

#!/bin/bash
##########################################################
# Scripts de Exemplo de Uso de Shell Script com Dialog   #
# Obs: Nao esqueca que para funcionar o pacote dialog    #
#      tem que estar instalado no seu S.O.               #
#                                                        #
# Autor: Dailson Fernandes - contato@dailson.com.br      #
# Licenca: GNU/GPL                                       #
##########################################################
# Exibe uma mensagem simples para o usuario.
# E espera que ele pressione enter.
dialog --msgbox "Exibindo uma mensagem para o Usuario" 0 0

clear

quarta-feira, 29 de fevereiro de 2012

Aula de Linux 1 - Comandos Básicos

Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

O Exercício de fixação desta aula, pode ser acessado no seguinte link:
http://www.dailson.com.br/2012/02/exercicio-da-aula-1-de-linux.html

Acessar Consoles Virtuais (De F1 a F12)

Para acessar

ALT+F1 ... ALT+F12 ou
CTRL+ALT+F1 ... CTRL+ALT+F12 (Caso exista a interface gráfica na máquina).

No caso do FEDORA a Interface Gráfica está no console F1

No caso do Ubuntu A Interface Gráfica está no console F7

Prompt
usuario@maquina:/caminho #

$ - indica usuario que está logado com usuário comum
# - indica que está logado com o usuário root (Administrador do Sistema)
~ - indica o diretório home do usuário

Para Autocompletar Comandos:
use a tecla TAB

Não esqueça, o Unix é case sensitive!

Rolagem de Tela: SHIFT+PG UP e SHIFT+PG DW

Histórico de comandos: 
Todos os comandos executados podem ser acessados com SETA PARA CIMA e SETA PARA BAIXO.

Comandos Iniciais do Unix:
Obs: O Caracter # (jogo da velha) antes da palavra, representa um comando que pode ser executado diretamente no console.
Para tornar-se root da máquina
# su

Limpar a tela
# clear 
Obs: Tecla de atalho: ctrl+l

Exibir conteúdo dos diretórios
# ls
# dir
# vdir
# ll (Este é um alias)
# ls / (exibe a raiz do disco)
# ll / (exibe a raiz do disco de forma detalhada)


Alias: Utilizado para Apelidar comandos
Use da seguinte forma: alias apelido=comando
Ex:
# alias limpa=clear
# limpa

Para Criar alias com vários comandos:
# alias comandos="clear ; ls ; date ; whoami"

Para exibir todos os alias
# alias

Para apagar um alias
Use da seguinte forma: unalias nome-do-alias
Exemplo:
# unalias comandos

Exibe data e hora
# date

Exibe o calendário
# cal
# cal 1980

Para acertar data e hora
Use da seguinte forma:  date MMDDHHminAAAA
# date 270220302012

Para exibir Informações da Máquina

Versão, kernel, plataforma
# uname -a

Para exibir as partições dos HD
# df
# df -h (Exibe em Mega, Giga...)
# mount

Informações de Hardware
# lspci 
# lspci -v
# lspci -vv
# lspci -vvv
# lspci -vvvv

Para exibir dispositivos USB
# lsusb
# lsusb -v

Para exibir as características do Processador
# lscpu
ou
# cat /proc/cpuinfo

Para exibir as características de memória do sistema:
# free
# free -m (exibe em megas)
# free -g (exibe em giga)

Exibe os módulos que estão em uso no momento
# lsmod

Listar os Processos da máquina em tempo real
# top

Exibe o tempo que a máquina está ligada
# uptime

Exibe os comandos executados no console:
# history

Acessa o comando do histórico
!Número do comando
Ex:
# !15

Apaga o histórico de comandos:
# history -c

Para obter ajuda do Linux:
comando --help
Ex:
# df --help

Para obter um manual completo de um comando
Use da seguinte forma: man comando
Ex:
# man ls

Para procurar uma palavra na descrição do comando
Use da seguinte forma: apropos "palavra"
ou ainda
whatis "palavra"
Ex:
# apropos disk (procura todos os comandos que tem a palavra disk na descrição)
ou ainda
# man -k disk

Teclas de Atalho de um manual:
q - sai do manual
/ - procura uma palavra no manual
n - procura a próxima ocorrencia da palavra
p - procura a ocorrencia anterior da palavra
g - vai para o início do manual
G - vai para o fim do manual

Info Pages
Idêntico as páginas de manual, mas é usada navegação entre as páginas
# info
ou ainda info e o nome do comando que você quer obter ajuda
Ex:
# info df

Teclas de Atalho de uma info page:
q - Sai da info pages
? - Mostra a tela de ajuda (que contém a lista completa de teclas de navegação e muitos outras opções).
n - Avança para a próxima página
p - Volta uma página
u - Sobre um nível do conteúdo (até checar ao índice de documentos)
m - Permite usar a localização para encontrar uma página do info. Pressione m, digite o comando e tecle <Enter> que será levado automaticamente a página correspondente.
d - Volta ao índice de documentos.

Criação de Usuários
Para criar o usuário noite com senha n0it3
Obs: o parâmetro -m cria o diretório home do usuário e o -s /bin/bash força o uso do shell bash.

# useradd -m -s /bin/bash noite
# passwd noite

Para excluir um usuário
# userdel -r noite

Para tornar outro usuário sem ter que logar
Use da seguinte forma: su nome-do-usuário
Ex:
# su dailson

No caso do ubuntu e algumas outras distribuições, utilize o comando su da seguinte forma:
# sudo su 

Para sair do root ou de um usuário acessado via o comando su
# exit 
ou a tecla de atalho CTRL+D

Para efetuar o logoff de um console:
# exit
# logout
ou a combinação de teclas CTRL+D

Exibe usuários logados
# who
# w
# whoami
# who am i
# logname
# users

Comandos para Desligar o Servidor Linux:

Desliga o servidor:
# halt
# poweroff
# shutdown -h now

Reinicia o servidor:
# reboot
# shutdown -r now
# CTRL + ALT + DEL

Programa o desligamento:
# shutdown -h +30 (Desliga o servidor daqui a 30 minutos)
# shutdown -h +120 (Desliga o servidor daqui a 2 horas)

Programa o reinicio:
# shutdown -r +30 (Reinicia o servidor daqui a 30 minutos)
# shutdown -r +120 (Reinicia o servidor daqui a 2 horas)


Referências:
Guia FocaLinux - http://www.guiafoca.org/?page_id=14
The Linux Manual: http://www.devin.com.br/tlm4/
Manuais do Linux (Páginas man)

Exercício:

O Exercício de fixação desta aula, pode ser acessado no seguinte link:
http://www.dailson.com.br/2012/02/exercicio-da-aula-1-de-linux.html