Comandos LinuX Debian ( Ubuntu ) [ Linux ] [ Tutorial Completo ]
[LINUX] Comando basicos
Bem……o maior receio dos usuários Microsoft, é com respeito a os comandos do Linux.
Sabendo todos os comandos do Linux, podemos realizar façanhas bem legais, como por exemplo: retirar toda a visualização gráfica e ferramentas de leigos, deixando o sistema pronto para realizar suas funções com um numero Record de utilização de memória, muito abaixo de qualquer sistema operacional (Um dos motivos de o Linux estar sendo o SO mais utilizado em empresas hoje em dia)
Este tópico requer anotação dos interessados, pois deveram treinar suas utilizações diante de um sistema Linux, não tentar gravar na memória como estudo
Começando…
ls = Lista os arquivos, mesmo que dir do DOS
* Atributos comuns:
* -a = mostra arquivos ocultos
* -l = mostra bytes, permissões, diretório, etc
Obs: no ls os nomes de arquivos nos sistemas *X (Unix, linux, etc) não precisam ter só 8 letras. Dai, se você quer listar os arquivos começados com u, por exemplo, peca ls u* e veja o resultado.
* substitui qualquer conjunto de caracteres
? substitui caracteres isolados
rm = remove arquivos, no formato: rm (arquivo1) (arquivo2) (arquivo3) …
Exemplo: rm look.doc / rm root.txt link.html win95.w95
cp = copia arquivos, no formato: cp (arquivo1) (diretório)
Exemplo: cp manual.txt /home/manual
cat = mostra o conteúdo do arquivo, mesmo que o ‘type’ no DOS
more = exibe o conteúdo de um arquivo pagina a pagina, mesmo q no DOS
Exemplo: ls|more
pwd = exibe o diretório atual (o que vc esta)
rmdir = apaga diretório
Exemplo: rmdir /diretório se o diretório estiver cheio, use o rm com o atributo -r
mkdir = cria diretório
Exemplo: mkdir /diretório
clear = limpa a tela, mesmo que ‘cls’ no DOS
———-
who = mostra quem está na maquina no momento
———-
whoami = mostra quem você e – útil quando você esquece com q login entrou…
———-
finger = mostra o usuário associado a certa chave
———-
df = mostra o espaço usado, livre e a capacidade das partições do HD
———-
free = exibe a memória livre, a usada, e o buffers da memória RAM
———-
exit e logout = sai da sessão atual
____________________________________________________________
tar (tape archive) = programa de geração de backup
tar -c gera backup
tar -x restaura backup
tar -v lista cada arquivo processado
tar -t lista o conteúdo de um backup
____________________________________________________________
Nota: Para descompactar arquivos “tagged”(.tar.gz, .tgz, etc)
tar zxpvf (nome_do_arquivo)
Se o arquivo for “gziped”(.gz):
gunzip -d (nome_do_arquivo)
chmod – muda as permissões do arquivo/diretório
chown – muda as permissões do arquivo/diretório
———-
awk – Procura por um modelo a partir de um arquivo. Inclui uma linguagem de programação embutida.
———-
bdiff – Compara dois arquivos grandes.
———-
bfs – Procura um arquivo grande.
———-
cal – Exibe um calendário.
———-
cat – Encadeia e imprimi arquivos.
———-
cc – Compilador C.
———-
cd – Muda diretório.
———-
chgrp – Muda o titulo de um grupo de arquivos.
———-
cmp – Compara dois arquivos; mostra a localização (linha e byte) da primeira diferença entre eles.
———-
comm – Compara dois arquivos para determinar quais linhas sao comuns entre eles.
———-
cu – Chamar outro sistema UNIX.
———-
date – Retorna a data e a hora.
———-
diff – Exibe as diferenças entre dois arquivos ou diretórios.
———-
diff3 – Exibe as diferenças entre tres arquivos ou diretorios.
———-
du – Relatorio no uso do sistema de arquivos.
———-
echo – Exibe seus argumentos.
———-
ed – Editor de texto.
———-
ex – Editor de texto.
———-
expr – Avalia seus argumentos quando geralmente e uma formula matematica.
———-
f77 – Compilador FORTRAN.
———-
find – Localiza os arquivos c/ caracteristicas especificas.
———-
format – Inicializa um floppy disk.
———-
grep – Procura um modelo a partir de um arquivo. (veja awk)
———-
help – :/ (ajuda)
———-
kill – Termina um processo.
———-
ln – Usado para unir arquivos.
———-
lpr – Copia um arquivo para a linha de impressora.
———-
ls – Exibe informacoes sobre um ou mais arquivos.
———-
mail – Usado para receber ou enviar e-mail.
———-
nroff – Usado para formatar textos.
ps – Exibe um status dos processos.
———-
sleep – Causa um processo para tornar-se inativo por uma duracao de tempo especifica.
———-
sort – Escolher e unir um ou mais arquivos.
———-
spell – Procurar erros de ortografia num arquivo.
———-
split – Dividir um arquivo.
———-
stty – Exibir ou escolher parametros do terminal.
———-
tail – Exibir o fim de um arquivo.
———-
tset – Escolher o tipo de terminal.
———-
umask – Permite que o usuario especifique uma nova criacao de camuflagem.
———-
uniq – Compara dois arquivos. Procura e exibe em linhas o que e incomparavel em um arquivo.
———-
uucp – Execucao UNIX-para-UNIX
———-
vi – Editor de tela cheia.
———-
wc – Exibe detalhes no tamanho do arquivo.
———-
who – Informacoes de quem esta on-line.
———-
write – Usado para mandar mensagens para outro usuário.
Alguns comandos Linux
Mexendo nos meus arquivos encontrei essa relação de comandos, que tinha salvo logo quando comecei a mexer com nosso amigo linux, vou compartilhar com o galera, andei dando uma olhada e alterando uns comandos pois tinhas umas coisas meio fora da casinha.
Executando um arquivo
# chmod +x arquivo.sh
# ./arquivo.sh
Limpar histórico
# history -c
Descompactar arquivos.rar
# rar x arquivo.rar
Atualiza o pacote escolhido
# upgradepkg pacote.tgz
Remove um pacote tgz
# removepkg -warn pacote
Instala um pacote tgz
# installpkg pacote.tgz
Descompactar tar.gz
# tar -xzvf arquivo.tar.gz
Compactando tar.gz
# tar -czpf nome-arquivo.tar.gz /diretorio/*
Descompacta arquivo zip
# unzip arquivo.zip
Acesso via SSH
# ssh -l usuario servidor
# ssh -p PORTA usuario@ip
Instala pacotes “.deb”
# dpkg -i pacote.deb
Remove pacotes “.deb”
# dpkg -r pacote.deb
Configura a linguagem no Debian
# dpkg-reconfigure locales
Escaneando portas
# nmap -sS -O IP
Instalando um pacote com apt
# aptitude install nomedoprograma
Remover pacote
# aptitude remove nomedoprograma
Remover pacote definitivamente
# aptitude purge nomedoprograma
Da permissão total a um arquivo e/ou diretório
# chmod 777 arquivo
Confirma antes de apagar os arquivos (-i)
# rm -i arquivo1 arquivo2 arquivo3
Lista arquivos e diretórios ocultos com permissões
# ls -la
Perigoso, apaga qualquer arquivo e diretório e todo seu o conteúdo
# rm -rf
Pesquisar apenas um comando
# history | grep comando
Força o arquivo a ser apagado
# rm -f arquivo1 arquivo2 arquivo3
Mostra o PID do shell que está sendo rodado
echo $$
Visualiza o conteúdo de um arquivo com paginação
# more arquivo
Muda o usuário e grupo de um diretório e todo seu conteúdo
# chown -R usuario.grupo deretorio/
Matando um processo
# kill -9 numero_do_processo
Visualiza o conteúdo de um arquivo
# cat arquivo
Compactar arquivos e/ou diretórios em tar.bz2
# tar -jcf nome.tar.bz2 arquivo-e-ou-diretorio-a-ser-compactado
Informa qual o tipo de arquivo
# file arquivo
Descobre a versão do kernel
# uname -r
Exibe o histórico de logins e logouts de usuários baseado no conteúdo do arquivo /var/log/wtmp
# last
Cria um link simbólico para um arquivo já existente
# ln -s arquivo caminho
Mostra todos os comandos que fora digitados
# history
Mostra informações como: versão do kernel, arquitetura usada, nome da máquina
# uname -a
Manual de algum comando ou programa
# man nome
Executa um comando após o outro
# comando1 & comando2
Mostra quanto tempo a máquina está ligada
# uptime
Renomeia ou move arquivos e diretórios
# mv nome-original nome-modificado
ou
# mv arquivo1 arquivo2 arquivo3 destino
Dece um diretório
# cd ..
Apaga arquivos
# rm arquivo1 arquivo2 arquivo3
Muda de diretório
# cd diretorio
Roda comandos em background, deixando o terminal livre
# programa &
Pipe(|) direciona a saída de um comando para entrada de outro
# ls -l | more
Mostra suas informações de usuário
# whoami
Lista arquivos e/ou diretórios com permissões
# ls -l
Mostra a data e hora na tela
# date
Mostra quem está logado no sistema
# who
Verifica o espaço total em um diretório
# du -sh diretorio
Exibe o buffer de anel do kernel e as mensagens de inicializacao do sistema
# dmesg
Procura por um arquivo
# find / -iname nome-do-arquivo
Lista todos os processos rodando na máquina
# ps -aux
Verifica o espaço em cada diretório
# du
Continua download no wget
# wget -c URL
Copia diretórios e permanece as permissões
# cp -p diretorio-origem /diretorio-destino
Copia diretórios
# cp -r diretorio-origem /diretorio-destino
Rebootar o linux
# reboot
Desligar o linux
# halt
Ajuda de algum comando
# nome –help
Exibe a arquitetura de hardware do pc atual
# arch
Exibe um calendario
# cal
Exibe informações sobre a memoria em MB
# free -m
Cria um diretório
# mkdir nome
Verifica o espaço disponivel no HD
# df -h
Mostra o diretório em que se encontra
# pwd
Se divirta
Permissões de um arquivo Linux
Chmod é o comando que usamos para mudar as permissões de um arquivo. Podem ser vistas através do comando ls -l.
A esquerda dos arquivos aparecerá uma cadeia de caracteres de difícil compreensão inicial, mas prestem atenção:
Primeiro Caractere = Indica o tipo de arquivo, pode ser: Arquivo normal, executável ou texto.
d = Diretório c = Dispositivo orientado a caracteres (modem, portas seriais) b = Dispositivo orientado a blocos (hd) s = Socket mapeado em arquivo ("Em Unix tudo é arquivo") p = FIFO, comunicação inter-processos l = Link Simbólico
3 próximos Caracteres: Permissões Válidas para o DONO do arquivo.
(1ª coluna esta o nome do usuário)
3 próximos Caracteres: Permissões Válidas para o GRUPO dono do arquivo.
(2ª coluna ao lado do DONO)
3 próximos Caracteres: Permissões para o RESTANTE dos usuários do sistema.
R = Permissão de leitura. Para diretórios, pode listar seu conteúdo. W = Permissão de escrita. X = Permissão de execução. Para diretórios, pode entrar nele.
=D
Linux – Shell
Introdução à Shell
O intérprete de comandos é o interface entre o utilizador e o sistema de exploração, daí o seu nome inglês “shell”, que significa “casca”.
A Shell está então se encarregando de ser o intermediário entre o sistema de exploração e o utilizador graças às linhas de comando escritas por este. O seu papel consiste assim em ler a linha de comando, interpretar o seu significado, executar o comando, seguidamente devolver o resultado às saídas.
A shell é assim um ficheiro executável, engarrega-se de interpretar os comandos, transmiti-los ao sistema e devolver o resultado. Existem várias shells, sendo as mais usuais sh (chamada “Bourne shell”), bash (“Bourne again shell”), csh (“C Shell”), Tcsh (“Tenex C shell”), ksh (“Korn shell”) e zsh (“Zero shell”). O nome corresponde geralmente ao nome do executável.
Cada utilizador possui uma shell por defalt, que será lançada durante a abertura de comando. A shell por defalt está definida no ficheiro de configuração /etc/passwd no último campo da linha que corresponde ao utilizador. É possível alterar a shell numa sessão, executando muito simplesmente o ficheiro executável correspondente, por exemplo:
/bin/bash
Convite de comando (rápido)
A shell inicia-se lendo a sua configuração global (num ficheiro do directório /etc/), de seguida lendo a configuração própria ao utilizador (num ficheiro escondido, cujo nome começa por um ponto, situado no directório básico do utilizador, quer dizer /home/nom_de_l_utilizador/.ficheiro_de_configuracao), posteriormente afixa um convite de comando (em inglês prompt) do seguinte modo:
machine:/repertoire/courant$
Por defalt, na maior parte das shells o prompt é composto pelo nome da máquina, seguido de dois pontos (:), do directório corrente, seguido de um carácter que indica o tipo de utilizador conectado:
- «$» indica que se trata de um utilizador normal
- «#» indica que se trata do administrador, chamado “root”
Noção de linha de comando
Uma linha de comando é uma cadeia de caracteres constituída por um comando, correspondente a um ficheiro executável do sistema, ou por um comando shell bem como os argumentos (parâmetros) opcionais :
ls -al /home/jf/
No comando acima, ls é o nome do comando, – Al e /home/jean-francois/ são argumentos. Os argumentos que começam – designam-se opções. Para cada comando existem geralmente diversas opções que podem ser detalhadas escrevendo um dos seguintes comandos:
commande --help commande -? man commande
Entrada/saída standard
Aquando da execução de um comando, é criado um processo. Este vai então abrir três fluxos:
- stdin, chamado entrada standard, no qual o processo vai ler os dados de entrada. Por defeito, o stdin corresponde ao teclado; STDIN é identificado pelo número 0;
- stdout, chamado saída standard, no qual o processo vai escrever os dados de saída. Por defeito, o stdin corresponde ao ecrã; STDOUT é identificado com o número 1;
- stderr, chamado erro standard, no qual o processo vai escrever as mensagens de erro. Por defeito, o stderr corresponde ao ecrã. STDERR é identificado com o número 2;
Por defeito, quando se executa um programa, os dados são lidos a partir do teclado e o programa envia a sua saída e os seus erros para o ecrã, mas é possível ler os dados a partir de qualquer periférico de entrada, ou mesmo a partir de um ficheiro, e enviar a saída para um periférico de afixação, um ficheiro, etc.
Redirecionamentos
O Linux, como qualquer sistema de tipo Unix, possui mecanismos que permitem reencaminhar os entrada/saída standard para ficheiros.
Assim, a utilização do carácter “>” permite reencaminhar a saída standard de um comando situado à esquerda para o ficheiro situado à direita :
ls -al /home/jf/ > toto.txt echo "Toto" > /etc/meuficheirodeconfiguracao
O comando seguinte é equivalente a uma cópia de ficheiros :
cat toto > toto2
O redirecionamento “>” tem como objectivo criar um novo ficheiro. Assim, se um ficheiro do mesmo nome existir, este será esmagado. O seguinte comando cria simplesmente um ficheiro vazio :
> fichier
O emprego de um duplo carácter “>>” permite concatenar a saída standard para o ficheiro, quer dizer, acrescentar a saída na sequência do ficheiro, sem o esmagar.
cat < SH.txt
De maneira análoga, o carácter “<” indica um redireccionamento da entrada standard. O comando seguinte envia o conteúdo do ficheiro SH.txt em entrada do comando cat, cujo único objectivo é afixar o conteúdo sobre a saída standard (exemplo inútil, mas pedagógico) :
cat << STOP
Tubos de comunicação (canos)
Os tubos (em inglês “pipes”, literalmente “tubos”) constituem um mecanismo de comunicação próprio a todos os sistemas UNIX. Um tubo, simbolizado por uma barra vertical (carácter “|”), permite afetar a saída standard de um comando a uma entrada standard de outra, como um tubo que permite fazer comunicar a entrada standard de um comando com a saída standard de outra.
Assim, no exemplo seguinte, a saída standard do comando ls – Al é enviado para o programa sort encarregue de fazer uma triagem do resultado por ordem alfabética:
ls -al | sort
Desta maneira é possível encadear diversos comandos por tubos sucessivos. No exemplo seguinte, o comando fixa todos os ficheiros do directório corrente, seleciona as linhas que contêm a palavra “zip” (graças ao comando grep) e conta o número total de linhas :
ls -l | grep zip | wc -l
Bom isso é tudo, abraços!