Aula17 Interface Comando
Aula17 Interface Comando
Aula17 Interface Comando
Software Livre
A Interface de comando
Interface de linha de comando
● Também conhecida como CLI, modo texto ou shell
● Praticamente qualquer tarefa administrativa pode ser
realizada usando apenas este tipo de interface
● Usuários acostumados com interface gráfica podem ter uma
dificuldade inicial,
● Mas ao se conhecer os atalhos e facilidades é possível
obter grande produtividade nesse ambiente
● Comumente é a única opção em alguns servidores
Linha de comando
● Há vários programas que oferecem uma interface
de linha de comando
● Alguns deles:
●
sh – O primeiro shell está disponível em praticamente
qualquer máquina unix-like
●
csh – Um shell capaz de suporta comandos próximos
da lingagem C
●
bash – O shell padrão no Linux desenvolvido pelo
projeto GNU
● O Linux diferencia maiusculas e minusculas
Prompt de comando
● Comumente é representado por
● [usuario]@[maquina]:[diretorio_atual][#|$]
●
Ex.: tadeu@servidor:/home$
● Login do usuário atual = tadeu
● Nome de host da máquina = servidor
● Diretório padrão onde os comandos serão executados
= /home
●
$ identifica um prompt de usuário comum
●
# indicaria o prompt de um usuário privilegiado
Navegando entre diretórios
●
cd [diretorio] – Change directory
● Use para mudar a pasta atual
● 3 símbolos especiais
● . = diretório atual
● .. = diretório pai
● ~ = diretório home do usuário atual
● Pode-se usar caminhos relativos e absolutos
Listando arquivos
●
ls – listar arquivos em um diretório
●
ls -l = lista arquivos num lista detalhada
●
ls -a = lista todos arquivos inclusive arquivos
ocultos
●
ls -d = lista diretórios
●
ls -h = lista valores em formato human-readable
(KB MB ao invés de bytes)
Copiar arquivos
●
cp origem destino
● cp -r cópia recursiva usado para copiar o
diretório e conteúdos destes
● Para mover arquivos utilize o:
●
mv
● Também pode ser utilizado para renomear
arquivos ou diretórios
Removendo arquivos
● Utilize rm para remover arquivos
●
rm -r Para remover diretórios com o seu
conteúdo recursivamente
●
rm -f para forçar remoção sem confirmação
USE COM CUIDADO
●
rm -rf / destrua sua árvore de diretórios
Criar diretórios
●
mkdir [diretório]
●
mkdir -p [diretório] Criará os diretórios pais se
necessário
Permissões
● Ao listar arquivos em uma pasta pode-se ver as permissões de
cada um:
● As permissões são:
● W - Write
● R – Read
● X – Execute
● Para cada arquivo as permissões são dadas ao dono, ao grupo
e aos outros.
● Assim as permissões aparecem na forma:
● -wrxwrxwrx – dono grupo outros
● O primeiro caracter pode ser um D o que indica que este
arquivo é na verdade um diretório
Permissões
● Há outros tipos de arquivos:
●
b – arquivo especial de blocos Ex.: /dev/sda
●
c – arquivo especial de caracter Ex.:/dev/tty
●
p – canal (criado para comunicação entre
processos)
●
s – socket (criado para comunicação entre
máquinas na rede)
Permissões
● Mudando permissões
●
chmod – change mode
●
chmod [modo] arquivo
● Onde modo pode estar no formato numérico ou
textual
● Textual
●
[ugo][+-=][rwx]
● Numérico
●
000 666 777
Permissões
● Quem
● u para dono
● g para o grupo
● o para outros
● Operadores
● + Adicionar
● - Retirar
● = Igualar
● Ex.:
● u=rw – Dono tem permissão de leitura e escrita
● u+x – Adicionar permissão de execução para o dono
Permissões
● Modo numérico Permissão Valor
--- 0
● Mais comumente usado --x 1
● R=4 -w- 2
● W=2 -wx 3
● X=1 r-- 4
r-x 5
● Para combinações basta somar os valores
rw- 6
● RWX = 4 + 2 + 1 = 7 rwx 7
● R-X = 4 + 1 = 5
● RW- = 4 + 2 = 6
● chmod pode então ser usado com os valores para u/g/o de uma
vez só. Ex.:
● chmod 755 arquivo.sh – dono tem privilegio 7 / grupo 5 / outros 5
Permissões
●
chown – muda o dono e o grupo de um arquivo
●
chown [dono]:[grupo] arquivo
●
chgrp também pode ser usado para mudar
apenas o grupo do arquivo
Variáveis de ambiente
● São variáveis comumente definidas na
inicialização do sistema
● Controlam preferências do usuário ou
localização de arquivos
●
A variável PATH indica o caminho padrão para
buscar programas no sistema
● Importante: para usar o valor contido dentro da
variável é necessário adicionar $ assim para
usar o valor de PATH usamos $PATH
Variáveis de Ambiente
● Atribui-se valores a variáveis com um sinal de igual
●
PATH=/usr/bin
● Para ver o valor de uma variável use echo Ex.:
●
echo $PATH
● Para que a variável seja visível em todo o sistema é
necessário exportá-la:
●
export PATH
●
env – exibe as variáveis de ambiente atuais
Variáveis de Ambiente
● Tarefa comum:
●
Adicionar uma pasta ao PATH:
●
PATH = $PATH:/home/nova_pasta
●
export PATH
●
note que as pastas em PATH são separadas
por : e não ;
Editando um arquivo
● Há muitos editores de modo texto
●
nano/pico – interface mais simples, nem sempre
presente na instalação padrão
●
emacs – editor avançado com muitas funções e os
mais variados plugins
●
vim – editor avançado, presente em quase qualquer
instalação linux, recursos para programadores e
administradores de rede
Vim
● Dois modos
● Modo de inserção
● Modo normal
● Comandos Básicos:
● Esc – ir para o modo normal
● i – Ir para o modo de inserção de texto
● :q! - sair sem salvar
● :x – sair salvando
● :w – gravar o arquivo
● /texto – para buscar texto em um arquivo
● G – ir para o final do arquivo
● g – ir para o início do arquivo
nano
● Editor de texto mais simples
● Interface mais parecida com a de editores
gráficos
● Funções ativadas através de combinações de
teclas CTRL + <TECLA>
● Os atalhos para as funções podem ser vistos
na parte inferior da tela
Atalhos úteis
●
CTRL + U – apaga a linha de comando atual
●
CTRL + D – encerra a sessão atual
●
CTRL + R – busca comandos no histórico
●
TAB auto-completa um comando