Original em formato texto com marcações para conversão em HTML, processo automatizado com scripts e txt2tags.
Resumo de comandos, linhas de comando e scripts mais utilizados na linha de comando, shell, console, terminal, konsole, modo texto, prompt, bash e outros nomes pelo qual é conhecida a opção de digitar o comando em ambiente texto ou " aquela tela preta".
Os comandos e dicas podem não atender as suas necessidades, não ser compatível com sua instalação, tente adaptar ao seu ambiente.
Comandos mais complexos, scrips e exemplos de uso em scripts, expressões regulares, shell script e outros recursos mais avançados, veja no FAQ
Neste documento tem somente alguns exemplos de comandos pra serem executados em modo texto no shell, isto quando faz boot em modo texto ou no terminal shell que abriu a partir do ambiente gráfico.
Comandos que requer poderes de root, torne root com su -
, tornando root somente com su
sem o -
, não pega o path (caminho do root), desta forma, para executar programas do root precisa informar o caminho completo para não retornar mensagem de erro ou de "comando não encontrado" dando a impressão que não existe o programa.
Como abrir um console, terminal shell, Konsole.
A partir do ambiente KDE, clique em Menu K (fica na mesma posição do Iniciar do windows), procure por terminal, console e termos semelhantes, ou pelo atalho;
Tecle Alt+F2 e digite na caixa de comando: konsole
Abre a tela com o prompt da linha de comando, observe o sinal no prompt, quando exibe $
indica que está como usuário comum e portando com poderes limitados ao usuário, caso precise executar comandos com poderes de root, use o sudo mais o comando desejado, ou torne root no konsole com o comando su -
, observe que altera o sinal na linha de comando para #
e neste console tem todos os poderes, portanto use somente quando necessário e com os devidos cuidados.
Abrir novos terminais shell. A partir do login em modo texto, pressionar a tecla ALT+mais uma das teclas de função "F" de 2 a 5, assim ALT+F2, abre o terminal 2 que pode ser o mesmo usuário ou outro login, muito útil para usar um terminal na maquina local, um segundo para uma conexão via ssh ou outro aplicativo que acessa outra maquina, um terceiro para editar algum arquivo na maquina local ou remota, pode copiar e colar entre terminais, mesmo que algum deles seja de maquina remota, o terminal 1 e aberto pelo login inicial, para alternar entre os terminais abertos use ALT+F(terminal desejado) F1 é a tecla de função e não F+1, assim ALT+F1 volta ao terminal 1.
A partir de um ambiente gráfico use CTRL+ALT+F1, ...F6, com CTRL+ALT+F1 abre o console 1 e para voltar ao X com ALT+F7. com CTRL+ALT+F2 abre o segundo e para voltar ao X com ALT+F8.
A referencias ao X
é a interface gráfica, ambiente gráfico, servidor do ambiente gráfico para rodar o gerenciador de janelas, na sua distro deve ter várias opções, os mais populares e também requer mais recursos da maquina, são KDE e Gnome.
K - esta letra está muito associada ao KDE, a maioria dos pacotes do KDE tem o nome iniciando com a letra k
, pode associar todo pacote que inicia com k
como sendo do KDE
$
no prompt de comando indica que está como usuário comum neste console, tem seus direitos limitados ao usuário em questão, dentro da linha de comando e scripts serve para pegar valores de variaveis e outras funções.
#
no prompt de comando indica que está como super-usuário (root), tem todos poderes na maquina, sem limites de permissão, portanto use com cautela, em arquivos de configuração, scripts ou dentro da linha de comando tem outras funções, geralmente usado para indicar que a linha se trata de comentário e não será interpretada, muito utilizado no inicio da linha para inserir comentários em scripts e arquivos de configuração, também utilizado no corpo da linha para inserir comentários a partir dele.
/
\
, no DOS se usa a barra invertida \
em caminhos dos diretórios e sub-diretórios, o equivalente no Linux é a barra normal /
, exemplos, cd /etc, cd /tmp, cd /home/zago, mudar para a raiz do disco cd /
A barra \
no Linux tem outra aplicação, (scape) sentido de scapar, indicar caracteres especiais no nome de arquivos ou diretórios, use a \
antes de caracteres especiais como espaço, sinal de interrogação ou outro simbolo qualquer, exemplo para entrar no diretório com espaços no nome meus doc
, use o comando `` cd meus\ doc``, tente usar a tecla TAB para autocompletar.
Também utilizada na quebra de linha de comando e scripts, longas linhas de comando pode dificultar o entendimento e até mesmo copiar e colar, para dividir a linha em varias, acrescente \
no final de cada linha, o shel não interpreta esta linha nem o caracter seguinte que é o fim de linha, interpretanto todas as linhas da squencia como sendo uma única linha.
também utilizada antes de simbolos que não deve ser interpretado pelo bash (shell), tanto em linha de comando ou script.
~
o sinal til é um atalho para o home do usuário, tem muitas aplicações, geralmente é utilizado quando está em outro local que que indicar o home do usuário, alguns exemplos; mudar para o home do usuário cd ~
, copiar arquivo para o home cp arquivo.doc ~
, vale também em conexões remotas via ssh.
.
o ponto tem varias funções, além do uso em nomes de arquivos e diretório, serve para tornar arquivos e diretórios ocultos, quando arquivos ou diretórios iniciam o nome com um ponto, eles ficam oculto para o comando ls
, para listar estes arquivos use ls -a
Também utilizado para indicar o diretório corrente, exemplo do uso com cp, dentro do diretório /tmp, copiar todos os doc de /home/zago, basta executar; cp /home/zago/*.iso .
, observe que o ponto no final da linha de comando, indica como destino o diretório local, funciona mv, scp ...
SHIFT+INSERT, cola na linha de comando o que foi copiado em outro local, pode ser copia via CTRL+C de algum editor ou navegador, pode copiar da web e colar no console, também via mouse, selecionar e copiar, neste caso pode ser de outro terminal ou até mesmo copia de comandos que estão no próprio console, copiar parte do que está na tela para colar na linha de comando.
Tecla TAB serve para autocompletar comandos, nomes de arquivos ou diretórios, a tecla TAB geralmente fica no lado esquerdo do teclado, tem impressa duas setas opostas no sentido horizontal, inicie a diditação do comando e tecle TAB, quando não tem mais de uma opção irá completar o comando, pressionando duas vezes lista todas as opções, continue digitando e TAB, faça um teste que é fácil de pegar o funcionamento, exemplos; digite whe
e pressione o TAB que deverá completar a palavra whereis
, tente com comandos conhecidos em sua instalação, cdre
mais a tecla TAB deve completar cdrecord
Seta para cima e para baixa serve para navegar no histórico de comandos, seta de direção que aponta para cima, a cada toque exibe uma linha de comando que foi executada, seta para baixo volta para os comandos mais recentes, prático para acessar o histórico de conmandos, enter sobre a linha executa novamente.
Rolar a tela, scroll, SHIFT+PageUp e SHIFT+PageDown, permite acessar resultados no console que já não estão mais vísiveis na tela, rola a tela para cima e para baixo.
CTRL+ALT+BACKSPACE (RETROCESSO), mata o X, ambiente gráfico, quando trava o ambiente gráfico, para reiniciar somente o ambiente gráfico, pressione estas teclas simultaneamente.
CTRL+ALT+DEL é configurado no sistema, algumas distribuições configura para reiniciar o sistema, reboot, na sua instalação pode dar outra destinação a elas.
Nomes de arquivos pode conter até 256 caracteres, incluindo, letras, numeros, ponto".", underline"_", hifen"-". Não recomendado o uso de caracteres especiais e simbolos.
Considere que Linux diferencia letras maiúsculas de minúsculas, o arquivo zago é diferente de Zago e zAgo, pode ter os 3 arquivos no mesmo diretório, isto é chamado de "case sensitive"
Identificar unidades de discos e partições, no Linux tudo é idenficado como diretório, até mesmo o CDROM tem que ser montado para acessar, normalmente se monta o CDROM em /mnt/cdrom e para acessa-lo, basta acessar o ponto de montagem que neste exemplo é /mnt/cdrom, não existe as unidades de disco como no windows C: D:, tem que acessar o diretório ou ponto de montagem que será visível também como um diretório, algumas distro utilizam outro ponto de montagem e monta automaticamente quando insere o CD na unidade.
São muitos comandos (aplicativos na linha de comando) dificilmente voce utilizara todos os recursos do Linux e também seus comandos, considere como ferramenta poderosa para casos especiais, principalmente em servidores que não tem ambiente gráfico, ou quando falha a inicialização em modo gráfico, utilizar em scripts, criar seu arquivo de comandos para depois copiar e colar em lugar de digitar, quem já domina e conhece é um caso à parte.
Aos iniciantes o uso de comandos em modo texto parece assustador, pode acreditar que é uma maneira muito eficiente e prática, não precisa ficar digitando tudo, pode copiar e colar a linha de comando, usar o histórico, tecla tab para completar e muitos outros recursos e teclas de atalho.
Algumas dicas bem prática e fácil, voce vai se impressionar com a facilidade de uso e poder deste recurso, mais ainda quando descobrir o que se pode fazer em shell-script.
No ambiente grafico, com seu editor preferido crie um arquivo para colocar as linhas de comando de uso mais comum, quando precisar executar o comando, basta abrir o documento, copiar a linha de comando e depois colar no terminal shell, faça um teste agora, copie esta linha:
cat ~/.bash_history
Agora abra um terminal, posicione o cursor do mouse dentro da janela do terminal e clique com botão do meio, botão auxiliar ou com as teclas SHIFT+INSERT, uma destas ações vai colar a linha de comando no terminal, um enter executará a linha que vai mostrar seu historico de comandos, provavelmente deverá estar vazio se ainda não executou algum comando no bash, teste outros exemplos de comandos citados neste documento, também pode copiar varias linhas de comando em uma tacada só, repita o teste, copie e cole todas estas linhas:
ls -la cat --help pwd whereis cat
Depois de colar o comando acima eles já ficam no historico, para acessa-los novamente basta usar a tecla de direção para cima e para baixo, enter executa a linha de comando em exibição no prompt.
Crie seu próprio arquivo de comandos, vai executar tarefas mais rapidamente, evita esquecer a linha de comando e erros de digitação, também pode copiar parte da linha de comando e usar a tecla tab pra completar e muitos outros recursos, lembre que pra selecionar, copiar e colar o mouse funciona em todos os ambientes e nos dois sentidos, texto -> gráfico e gráfico -> texto.
Talvez a parte mais difícil é descobrir qual o comando para executar a tarefa desejada, não tenho a receita, tente esta dica que ajuda muito.
Quando você sabe o que quer fazer, mas desconhece o comando apropriado
man -k keyword
onde keywork
é o termo, comando ou palavra que procura, ( -k
) é equivalente ao comando apropos, ( -K ) pesquisa por uma determinada cadeia de caracteres em TODAS as página de manual, ou
apropos keyword
Quanto mais abrangente a keyword, maiores as chances de encontrar o que procura.
Nota: keyword pode ser qualquer verbo ou nome que possa descrever o que você está tentando fazer, bom lembrar que tudo em ingles, veja os resultados na procura por copia:
[root@gaqcl10 apt]# man -k copia copia: nothing appropriate [root@faqcl10 apt]# man -k copiar copiar: nothing appropriate
Agora com a keyword em ingles, veja o resultado de: man -k copy
[root@faqcl10 apt]# man -k copy cp (1) - copy files and directories cpio (1) - copy files to and from archives dd (1) - convert and copy a file ginstall [install] (1) - copy files and set attributes mcopy (1) - copy MSDOS files to/from Unix scp (1) - secure copy (remote file copy program) xfs_copy (8) - copy the contents of an XFS filesystem xfs_rtcp (8) - XFS realtime copy command
Quem não entende o ingles faça como eu, use a intuição que funciona, tente com variações da palavra, partes da palavra que voce acha que possa ser, sinominos, e etc..., vale também usar um tradutor, mesmo que seja o google ou altavista pra traduzir palavras do ingles pra portugues, pode acreditar, é muito simples, fácil e prático, basta tentar.
Geralmente no final do texto voce encontra algo semelhante a:
VEJA TAMBÉM ou SEE ALSO, consulte também estas indicações,
execute man mais a indicação.
No resultado do comando man man voce encontra isto:
VEJA TAMBÉM apropos(1), whatis(1), less(1), groff(1).
Pesquise no Google, depois que descobrir o comando, procure combinar diversas opções para refinar a pesquisa, algumas sugestões de pesquisa no Google sobre o comando sed:
Re: sed ~linux sed ~linux how to sed ~linux define:sed
A maioria dos comandos são comuns em todas as distros, cada comando tem um executável, script ou link apontando pra um aplicativo, e também alguns poucos poucos comandos "builtin", exemplo o comando read do bash.
A maioria dos comandos são aplicativos que estão instalados em /bin/ e /usr/bin/, alguns estão em outros sub-diretórios, cada comando tem um executável e pagina de manual, alguns comandos tem pacote próprio, muitos comandos são instalados por pacotes como util-linux e coreutils, isto pode diferenciar um pouco conforme a distribuição, perfil de instalação, pode instalar a qualquer momento, alguns requer poderes de root e estão somente no path (caminho de pesquisa) do root, sempre que tornar root use su -
(su espaço sinal de menos) assim vai pegar o path do root, sem o sinal menos também torna root mas não atualiza o path e portanto falha na execução de alguns comandos, a seguir algumas dicas comum, inclue comandos referente aos gerenciadores de pacotes e configuração que tem grandes diferenças entre as distros, os comandos sobre rpm e apt funcionam na maioria das distros que utilizam pacotes rpm, a mensagem de retorno pode ser diferente em algumas, caso falhe em distro derivadas do Debian ou outra que não utiliza rpm, procure pelos comandos especificos sobre e tutorias da distro.
Ver os aplicativos do pacote util-linux e coreutils, execute:
info coreutils
info util-linux
Acessar o help especifico de um aplicativo listado em info coreutils digite info coreutils aplicativo, exemplos:
info coreutils cat
Veja também outros resultados sobre o cat
man cat cat --help info cat
Explore também as pesquisas com gerenciador de pacotes da sua distro, são diferentes porque cada distro usa o seu, entre eles estão o rpm, apt, synaptic, smart, urpmi, yum, yast, e etc.. veja mais detalhes no FAQ especifico deles, aqui vai alguns exemplos de comandos úteis com apt e rpm.
Listar pacotes com alguma referencia a expressão "util"
apt-cache search util
O comando info
lista diversos comandos com o breve relado da aplicação e seu respectivo pacote instalador.
Refinar a pesquisa sobre os pacotes listados, aplique rpm -ql mais o nome do pacote listado com o comando acima, exemplo para listar todos os utilitarios que fazem parte do pacote:
rpm -ql util-linux
rpm -ql coreutils
Existem muitos utilitarios, a instalação automatica deles depende da distribuição, perfil de instalação ou requer instalação manual, o que tem em comum é um pacote para instalar o executável e sua documentação.
Identificar qual o pacote rpm que instalou determinado programa, informe o caminho ou vá até o diretório onde está instalado e execute:
rpm -qif nome-do-executável
por exemplo em /bin tem diversos executáveis, entre eles o sed, pra saber a qual pacote ele pertence, execute:
rpm -qif sed
Faça o mesmo para os demais executáveis como ls, cp, dd e etc..
Whereis localiza onde está o executável, ex.:
whereis cat
Mais informação sobre o comando, pegue o caminho indicado no resultado de whereis e execute:
rpm -qif /caminho/<comando>
rpm -qif /bin/cat
Refinando a pesquisa com grep, exemplo para retornar somente o nome do pacote que instala:
rpm -qif /bin/cat | grep "Name"
Tem mais informação, todos eles tem sua pagina no manual, pra obter mais informação consulte o manual do comando, pra alguns comandos tem arquivo especifico neste FAQ, com exemplos de uso, dicas e FAQ com mensagens que circulou na lista Linux-br, procure neste site pelo arquivo com o nome do comando pacote ou serviço.
Veja o FAQ sobre o google, na caixa de pesquisa coloque o comando mais +bash ~linux, faça um teste com pesquisas semelhantes a:
cat +bash ~linux
cat +shell ~linux
Por padrão o pacote coreutils faz parte do perfil de instalação, dificilmente será necessário fazer a instalação manual, caso seja necessário, execute como root em um terminal:
apt-get install coreutils
Utilize o caminho completo em scripts, utilize whereis pra descobrir onde está o executável, ex.
whereis cp
whereis du
Identificar o tipo de arquivo, em Linux não importa o nome nem a terminação do arquivo, use o comando file
para saber se é um executável, script, link simbolico, texto ou outro formato, execute file /caminho/nome-do-arquivo, ex:.
Programa executável retorna: [root@faqcl10 bin]# file /bin/ls ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped Script retorna: [root@faqcl10 ppp]# file /etc/ppp/ip-up ip-up: Bourne shell script text executable Link simbolico retorna: [root@faqcl10 bin]# file /usr/bin/vi vi: symbolic link to `/etc/alternatives/vi' Arquivo texto comum e arquivos de configuração retornam: [root@faqcl10 etc]# file /etc/hosts hosts: ASCII text Imagem ISO de CD [root@faqcl10 zago# file clive-20040828_kde3.3.iso clive-20040828_kde3.3.iso: ISO 9660 CD-ROM filesystem data 'Conectiva Live CD sn20042808 ' (bootable)
Tenho observado muitas pessoas estudando Linux, os motivos são os mais variados, uns porque precisam, outros porque querem, outros porque tem que aprender, outros é porque ouviu dizer que é melhor e quer conhece-lo, outros é porque já descobriram que tem que mudar, está preocupado com a expressão:
"Ou voce muda ou mudam voce"
O mais impressionante é que estas pessoas querem fazer isto utilizando o windows, incrivel como eles falam mal do Windows e utilizam o Outlouco para mandar e-mail pra listas ou foruns, acessam meu FAQ pelo I.E., quando solicito para enviar os resultados dos logs eles não conseguem porque não estão utilizando o Linux, somente querem um receita pronta, disparam perguntas em tudo quanto é forum e listas, não fazem o mais importante que é testar o comando pra ver os resultados.
Veja o fonte do e-mail e a assinatura de algumas mensagens de quem se apresenta como usuário Linux, nem todos é claro, mas encontrará muitos quem se apresentam como usuários ou administrador de redes Linux e não usam Linux.
Agora imagine como estas pessoas poderão saber o resultado de um comando Linux?
Como consultam o manual do Linux, man?, Como praticam?, Como poderão aprender algo sobre um sistema que não utilizam?, Porque não utilizam o próprio Linux?, porque não instalam o Linux e windows na própria maquina?, porque não utilizam uma distro que roda a partir do CD, quase todas as distro disponibilizam uma versão em live CD, não precisa instalar, roda a partir do CD.
Estas e outras perguntas, ainda não tenho as respostas, como não sou "genio" precisei instalar o Linux na minha maquina e utiliza-lo no dia a dia pra aprender alguns comandos e algumas coisas sobre Linux, somente depois que passei a usar o Linux descobri o quanto ele é melhor, mais fácil de usar, mais seguro e mais produtivo trabalhar com Linux.
Preciso de opiniões de quem estuda Linux e ainda utiliza windows, caso voce esteja nesta condição, por favor, ajude-me a entender, mande tua receita de sucesso para zagolinux@uol.com.br, gostaria muito de saber como aprender a configurar outro sistema operacional sem utiliza-lo.
Tente não fazer comparações ou procurar comandos equivalentes com outros sistemas operacionais, operando em ambiente gráfico o resultado no video não existem diferenças, em modo texto, (prompt, terminal, linha de comando ou shell) que é tudo a mesma coisa com nomes diferentes, lembra e alguns fazem comparação com o prompt do DOS, isto é um erro, este prompt no Linux tem muito mais poder e muitas ferramentas poderosissimas que possibilitam mesmo em modo texto navegar na Web e enviar e-mail, veja neste site lynx.txt e mutt.txt.
Serviços ou comandos que parecem complexos podem ser simplificados com uso de scripts que é outro recurso fabuloso no mundo Linux, entenda o Linux que voce pode fazer muito mais com menos esforço, só precisa ler um pouquinho e praticar.
Lembre também que os computadores não precisam de ambiente gráfico, isto é uma facilidade para os humanos e principalmente quando estas ferramentas gráficas são mais indicadas, tornam as coisas mais fáceis, mais produtivas e valorizam o uso da informática. Mesmo longas ou complexas linhas de comando podem ser colocadas em scripts, acrescentadas na configuração do sistema ou copiadas e coladas, pode até editar e copiar no ambiente gráfico e coladas na linha de comando.
No Linux não tem um arquivão (caixa preta) com todas as configurações, todas as configurações estão em arquivos texto, com comentarios e facilmente configuraveis via editor de texto, scripts, linha de comando, aplicativos especificos pro pacote, também tem ferramentas próprias pra configuração em embiente gráfico, voce faz a escolha, pode copiar a configuração de outra instalação, editar o arquivos de configuração ou usar ferramentas como linuxconf, webmin ou outra ferramenta gráfica que faz o mesmo trabalho com clique do mouse.
Existem diversas ferramentas e formas de pesquisa no disco, neste tópico, algumas ferramentas e comandos para uso em linha de comando ou script.
Em ambiente gráfico procure na sua instalação pelas ferramentas disponiveis, procure no KDE
por kfind
ls /usr/local
ls -la
/usr/local Mostra também os arquivos ocultos e outras informações sobre os arquivos e diretórios
ls -la ~
ls /usr/local | less
lista os arquivos/diretórios com parada por página.
lsof -u nomedelogin
ver quais os arquivos zago está usando:
lsof -u zago
find - poderoso utilitário para localizar arquivos.
Conheça também Locate
locate - Localizar arquivos. Sendo que antes de executá-lo pela primeira vez deve-se usar o "updatedb" para criar o banco de dados e deve-se executá-lo freqüentemente (sempre que se instalar/remover) programas do micro.
O Comando "updatedb" atualiza o banco de dados com informações de todos os discos montados, trocar CD, montar ou desmontar partições precisa executa-lo novamente, para não incluir o CD na pesquisa, lembre de remover a mídia antes de atualizar o banco de dados. Rode o updatedb regularmente.
Ex.: locate fvwm | less
. Encontrara todos os arquivos e diretórios que contenham "fvwm" em seu nome num piscar de olhos: fvwm, fvwm2, fvwm95,...
No linux a terminação do arquivo não tem o mesmo significado que tem tem no DOS/WIN, um executavel pode ter qualquer extensão, para identificar o formato do arquivo use o file
file /etc/resolv.conf resolv.conf: ASCII text file cat cat: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.0.0, dynamically linked (uses shared libs), stripped file contrato.doc contrato.doc: Microsoft Office Document
Páginas do manual: man file
pwd - mostrar o diretório corrente, na realidade um acrônimo de print working directory, digite pwd
para exibir o caminho completo do diretório atual.
mkdir novodir
Criar diretório em um local específico
mkdir /home/clientes/novodir
mkdir -p /dir1/sub1/sub2
(criar toda a hierarquia de diretórios).
cp e cpio
mv - Move ou renomeia arquivos/diretorios de um lugar ao outro.
Também sobrepõe o arquivo se ele já existir sem pedir confirmação
alguma (exceto nos Red Hats, que vem com uns aliases de segurança)..
Exs.:
mv /usr/src/arq.txt /home/arq.txt
Renomear, tem comando próprio rename
, ex:
rename arquivo.antigo arquivo.renomeado
mv também renomeia arquivos, exemplo:
mv arquivo.antigo arquivo.renomeado
fdisk -l
No CL10 tem o fsview plugin para konqueror, precisa instalar o pacote konqueror-addons:
apt-get install konqueror-addons
Procure no menu do KDE ou no konsole execute: fsview
Este comando abre uma janela no KDE com informação do diretório de onde executou o comando.
bash
bash
, entre outros serviços, armazena os ultimos comandos executados, este historico de comandos fica no arquivo .bash_history
que fica dentro do home
hostname hostname
(retorna o dominio local)
hostname -i
(retorna o ip local.)
Veja também o resultado de ifconfig
, route
,
Use o comando cat para visualizar o conteúdo do arquivo que armazena a inforamção, alguns exemplos:
[zago@faqcl10 t2t]$ cat /etc/resolv.conf search zago.eti.br nameserver 200.204.0.138 [zago@faqcl10 t2t]$ cat /etc/hosts 127.0.0.1 localhost.localdomain localhost 192.168.1.53 faqcl10.zago.eti.br faqcl10 [zago@faqcl10 t2t]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" ONBOOT="yes" BOOTPROTO="none" IPADDR="192.168.1.53" NETMASK="255.255.255.0" HOSTNAME=faqcl10 DOMAIN=zago.eti.br
Exibe o hardware detectado no boot e as mensagens de inicialização do sistema, alguns exemplos de comando
dmesg dmesg | less dmesg | grep hd dmesg | grep CDROM
echo ele vem no pacote coreutils
Alguns exemplos, pra exibir o conteudo da variavel LAN, idioma em uso
no sistema: echo $LANG
Exibir $?
, status do ultimo comando executado: echo $?
, ideal para uso em scripts, indentificar
se o comando foi bem sucedido ou não. tem diversos exemplos no diretório sobre script.
Consulte o manual:
man echo
info echo
tail -n 1 arquivoquevcquerler
isso irá ler a última linha e cair imediatamente para a shel ..
Ler as ultimas 50 linhas:
tail -50 arquivoquevcquerler
Ficar aguardando sempre a última linha...
tail -f arquivoquevcquerler
muito útil pra acompanhar as entradas nos arquivos de log no momento
que eles acontecem, ex:
tail -f /var/log/squid/access.log
Ver as primeiras linhas de um arquivo, utilize o head, exemplo:
head -50 arquivoquevcquerler
FAQ e indicações para outros arquivos do FAQ, pra compilar kernel, carregar modulos e etc...
uname -a
mostra versão do kernel do Linux.
uname -r
exibe versão do kernel.
more /proc/version
cat /proc/version
[zago@faqcl9 zago]$ arch i686
lynx www.zago.eti.br/comandos.txt
Em sistemas Linux nunca precisa reiniciar a maquina, todos os serviços tem o comando próprio para iniciar e encerrar, quando falhar o modo normal e recomendado, como ultima opção resta a força bruta (matar o processo), mas isto dever ser utilizado em casos extremos.
O procedimento para inicialiar um serviço é praticamente o mesmo em qualquer distro, Algumas distro facilitam estas operações atraves de scripts, reduzindo a tarefa a um único comando, alguns serviços requer comandos ou scripts especiais, de qualquer forma, quando não estão disponiveis junto com o pacote instalador porque instalou a partir dos fontes ou outro motivo qualquer, resta a opção de cria-los ou fazer tudo manual, veja exemplos, dicas e FAQ em;
Informações sobre os processos que estão rodando na maquina.
ps -aux
Árvore de processos (quem chamou quem)
/usr/bin/pstree | more
renice
Serve pra redefinir a prioridade do prcesso.
killall <nome_do_processo>; ex.: killall netscape
kill -9 <id_do_processo>
.kill - finaliza um processo
kill vem no pacote coreutils
paginas do manual:
man kill
killall - kill processes by name
killall vem no pacote psmisc
Consulte o manual:
man killall
xkill - kill a client by its X resource
xkill vem no pacote xfree86-progs
Manual, veja pelo ambiente gráfico ou no prompt:
man xkill
tr - altera ou apaga caracteres
tr vem no pacote coreutils
Consulte no manual: man tr, ``tr --help
, info tr
Troca caracteres em um arquivo, serve também para converter de maiusculas pra minusculas e vice versa.
Neste FAQ muitas dicas sobre conversão em geral, de um formato para outro, de um sistema operacional para outro, converter arquivos do sistema windows para Linux e vice versa, converter arquivos de um aplicativo para outro, etc..
ssh -X zago@192.168.1.53
adduser
e passwd
Este comando deve ser executado pelo root, serve pra criar usuários, execute adduser nome-de-login, ex.:
cal
- exibe um calendário no console o comando cal sem parametros mostra o calendario do mes corrente
cal 6 2003
# exibie o calendario do mes de junho de 2003
cal 12 2004
# exibie o calendario de dezembro de 2004
Calendario do mes corrente: cal
Calendario de 3 meses, do mes passado, atual e o proximo cal -3
cal é instalado pelo pacote: util-linux
Manual: man cal
locate calc
dc
também vem no pacote bc o comando
Limpa a tela, em modo texto pra limpar a tela basta digitar clear e enter, ou CTRL+L.
fold - ajusta cada linhas da entrada para caber na largura especificada
ele vem no pacote coreutils
Ex.: fold -w 80 comandos.txt
Manual:
man fold
info fold
fold --help
free
top
Mostrar as primeiras n linhas de um arquivo, (default n=10) exemplos:
mostrar as primeiras 10 linhas:
head comandos.txt
mostrar as primeiras 20 linhas:
head -20 comandos.txt
Combinando com tail, mostrar uma linha especifica, por exemplo a linha 21 do arquivo comandos.txt.
head -21 comandos.txt | tail -1
Ver os ultimos login
lastlog
last
ver os ultimos 20 last -20
Página do manual.
man last
e man lastlog
Exemplos de uso do comando ldd
ldd `which evolution` ldd `which evolution` | wc -l # rpm -qf /usr/bin/ldd glibc-base-2.3.3-62746cl
Utilizado com diversos comandos tais como ls, cat e etc.. semelhante ao more, o less possibilita rolar a tela para cima e para baixo com PgDn e PgUp. tecle q pra sair, exemplos do uso de less:
ls | less
ls -la | less
cat comandos.txt | less
less comandos.txt
Ler textos com paginação no formato do man
less -is comandos.txt
Ou informando o caminho do documento:
less -is /home/zago/guiaz/comandos.txt
Encerrar, sair - pressione q
(minusculo)
Numerar linhas
less -N cp.txt
rpm -qf /usr/bin/less
less-382-55907cl
Pra instalar: apt-get install less
Veja no manual do less:
man less
less --help
/sbin/lspci
ver informações sobre o hardware instalado, execute:
lspci -v
lspci -vv
veja também os resultados de dmseg que mostra o hardware detectado no boot.
man find
find --help
man -k find
apropos find
ls | more ls -la | more cat comandos.txt | more more nome do arquivo more comandos.txtver a vesão do kernel:
more /proc/version
Linux version 2.4.21-31301U90_4cl (andreas@buildmaster.distro.conectiva) (gcc version 3.2.2) #1 Qui Jun
26 01:44:43 BRT 2003
Veja também os resultados sobre som: more /proc/sound
Módulos do kernel carregados: more /proc/modules
Informações sobre a CPU: more /proc/cpuinfo
Particionamento de discos: more /proc/partitions
Sistemas de arquivos montados: more /proc/mounts
Pra ver todos as informações disponiveis em /proc, execute ls /proc e
depois execute:
more /proc/nome-do-arquivo-listado
more vem no pacote util-linux
Veja no manual do less:
man more
more --help
netstat -naut
netstat -na
netstat -nap
Numerando linhas com "nl"
nl arquivo.txt
nl arquivo.txt > arqnumerado.txt
Tem diversas opções, veja mais sobre nl
info coreutils nl
man nl
info nl
nl --help
paste -s teste.txt
paste -s -d' ' teste.txt
paste -s -d: teste.txt
paste -s -d ";" teste.txt
man paste
paste vem no pacote coreutils.
read é um dos poucos comandos "buitin" do bash.
Útil em scripts pra interagir com usuário pra pegar valores ou palavras.
Exemplo pra pegar uma palavra e colocar na variavel ENTRADA.
[root@faqcl10 root]# read -p "Digite uma palavra? " ENTRADA Digite uma palavra? TESTE [root@faqcl10 root]# echo $ENTRADA TESTE
man read
reboot e Enter
.Ele vem no pacote util-linux
Manual:
man rev
Veja no manual:
man seq
info coreutils seq
Pra ver todas as variaveis e seu conteúdo:
set
Ver conteúdo de uma variavel especifica, digite: echo $VARIAVEL, ex.: pra ver o idioma em uso:
echo $LANG
mais ajuda no FAQ bash.txt e no manual: man set
, man bash
./
ou sh
espaço nome do executável, por exemplo,
para executar o script atusite dentro do diretório corrente:
./atusite
ou
sh atusite
man sleep
, info sleep
, sleep --help
man tee
tee - lê da entrada padrão e grava na saída padrão
# rpm -qf /usr/bin/tee
coreutils-5.2.1-62747cl
Exemplo pra listar na tela e salvar o mesmo resultado em arquivo, listar tudo que foi acessado nas ultimas 24 horas no diretório /home/zago e também salvar o mesmo resultado em acessadosz.txt
find /home/zago -mtime -1 -type f | tee acessadosz.txt
O utilitário 'time' é usado como uma espécie de cronômetro para medir o tempo de execução de um comando especificado. Ele pode ajudar na otimização de programas para velocidade máxima, assim como vários outros usos.
Pra instalar:
apt-get install time
Contar o tempo decorrido pra executar uma tarefa. exemplos:
Faz a pesquisa e exibe também o tempo decorrido
time grep "comandos.txt" -r /home/zago/guiaz/
Exemplo pra conferir o md5 e o que retorna:
time sh -c 'md5sum -c cl10_cd1.iso.md5' cl10_cd1.iso: A soma coincide real 0m16.495s user 0m3.097s sys 0m1.914s
Exemplo pra retornar somente o tempo decorrido:
time sh -c 'md5sum -c cl10_cd1.iso.md5' > /dev/null real 0m17.000s user 0m3.049s sys 0m1.930s
Veja mais parametros no manual:
man time
, man wait
, man times
, man bash
=trap é um comando builtin do bash
man trap
, ou man bash
watch executa um programa repetidamente com a periodicidade informada. Pra sair do loop do "watch" pressione CTRL+C
Exemplo pra ficar executando infinitamente o comando netstat com repetição a cada 1 segundo:
watch -n 1 netstat -a
man watch
Procura palavras-chaves em um conjunto de arquivos de banco de dados contendo pequenas descrições de comandos do sistema, uma forma rápida de saber pra que serve o aplicativo ou comando, exemplos:
whatis wget Wget [wget] (1) - The non-interactive network downloader whatis find find (1) - search for files in a directory hierarchy
Nem todos os comandos tem definição, veja mais detalhes no manual: man whatis
Exemplos de uso:
which ssh
rpm -qif `which ssh`
ldd `which ssh` | wc -l
Mais informação:
rpm -qif /usr/bin/which Name : which Relocations: (not relocatable) >>corta<< Description : Dê a ele um nome de programa, e ele lhe dirá se está no seu 'PATH'. Por exemplo, 'which ls' poderia imprimir '/bin/ls', porque o programa ls, que está em um dos diretórios listados na variável de ambiente PATH, está localizado no diretório /bin.
who
Mostra quem está na máquina no momento
whoami
Mostra quem voce é - verificar com qual login entrou.
xargs
Alguns exemplos de uso deste comando: find /caminho/ -name nome_do_arquivo -type f | xargs rm -f
O -n1 força ele executar um comando pra cada arquivo. o -t força ele mostrar o que está sendo executado.
Ele vem no pacote "findutils", páginas do manual man xargs
xargs --help
Ex.: grep trabalho /teste/arquivo.txt Irá procurar a string "trabalho" no arquivo arquivo.txt
mc tem um excelente gerenciador de arquivos, editor de textos e etc.
Ex.: mc /usr/doc Abrirá todo o diretório /usr/doc no "mc". Este é o diretório onde são guardados os arquivos de documentação no Linux.
mcedit - editor de texto ASCII do mc.
Ex.: mcedit meu.arquivo
; Comandos do sed são parecidos com o do vim e não é por acaso, a diferença é que no vim você precisa acessar o arquivo para alterar e o sed faz isso em linha de comando.
== trafego na rede =
não esqueça, o linux e "case sensitive" letras minusculas e maiusculas em arquivos e diretorios são interpretadas como nomes difetentes. arq.txt e Arq.txt são arquivos diferentes aRq.txt e Arq.txt são diferentes.
Salvar resultados dos comandos em arquivo texto.
Desviar a saida de um comando pra um arquivo texto.
Comandos ou aplicativos como tar e ls que não geram log mas geram mensagens no video, estas mensagens podem ser salvas em arquivo texto. Pra salvar os resultados de um comando em arquivo, acrescente no final da linha de comando o sinal de maior ">" e um nome de arquivo. Ou utilize ">>" pra acrescentar as mensagens no final de um arquivo já existente. Tanto com ">" ou ">>" todas as mensagens da tela são desviadas pro arquivo indicado, alguns aplicativos precisam incluir o modo verbose, por exemplo no comando tar é "-v" ou "v", o arquivo criado poderá posteriormente servir para analize, comparação e etc.. teste com estes exemplos:
ls > logdols.txt
tar zcvf backuplog.tar.gz /var/log > logdotar.txt
a linha com o comando tar criará dois arquivos backuplog.tar.gz com o conteúdo do diretório /var/log e um arquivo logdotar.txt que pode ser editado e pode ver as mensagens emitidas como nome dos arquivos, mensagens de erro e etc...
Quando o arquivo já existir e quiser manter as informações já existentes e acrescentar no final deste as novas mensagens mantendo seu conteúdo use ">>" dois sinal de maior, assim mantém o arquivo e acrescenta as novas mensagens no final.
ls >>
logdols.txt
tar zcvf varlog.tar.gz /var/log >>
logdotar.txt
sobrepor >
inserir >>
Estes arquivos tem formato texto, utilize um editor de texto ou, tail, head, cat, more ......
Copias entre prompt e editores. Copiar o resultando de um comando do prompt ou parte do texto que está no terminal para um arquivo, muito útil pra copiar mensagens de erros, resultados de comandos pra guardar em arquivo ou enviar para quem estamos pedindo ajuda.
No Linux o mouse funciona também em ambiente texto, pode realizar copy e paste, copiar e colar, podemos trabalhar com dois terminais, após o login, pressione ALT+F2 pra abrir um segundo terminal, assim poderá utilizar o mouse para selecinar parte da tela em um terminal e colar no editor de texto aberto no outro terminal, ou copiar linhas de comando de um editor de texto e colar na linha de comando, também funciona entre o terminal em modo texto e editores ou browsers em ambiente gráfico.
Em modo texto, pra copiar passe o mouse com o botão acionador pressionado sobre o que quer copiar isto vai marcar a área como selecionada e não precisa de nenhum comando adicional, em seguida no outro terminal, click com o botão auxiliar do mouse para colar onde está o cursor, funciona nos dois sentidos, da linha de comando pra um editor ou de um editor pra linha de comando, sempre vai colar onde está o cursor, isto é muito útil pra salvar resultados da tela ou pra copiar linhas de comando de um texto pro terminal, prefiro copiar e colar do que digitar longas linhas de comando, evita erros de digitação.
Pode usar também entre um terminal do modo gráfico (konsole do KDE ou terminal de outro ambiente gráfico) e um editor de texto do ambiente gráfico, no KDE, tanto no terminal como no editor precisa pressionar o botão auxilar tanto para copiar ou colar.
Capturar tela pelo KDE (equivalente ao PrintScreen no windows)
iniciar -> Gráficos -> Ksnapshot
at
O comando at serve pra agendar a execução de comando pra um único evento. Por exemplo pra desligar o micro às 18:08 root@faqcl10# at 18:08 at> halt -p at> <EOT> warning: commands will be executed using /bin/sh job 1 at 2004-07-31 18:08
tem mais exemplos no FAQ agenda.txt
mdir a:
mcopy a:.
exit e logout Sai da sessao atual, use para fechar o konsole, ou quando tornou root em um console, exit volta ao usuário anterior.
shutdown - encerra todas as atividades do Linux e prepara para o micro ser desligado. shutdown now Desliga o micro o mesmo que halt shutdown -r now Reinicializa o micro
halt - comando para desligar o micro. Quando aparecer a mensagem "system halted" pode desligar. Uso: halt e Enter.
Algumas combinações de teclas úteis:
Ctrl+Alt+Backspace Sair do ambiente gráfico principalmente quando trava o X
Ctrl+Alt+F2 Acessar o console texto 2
Ctrl+Alt+F3 Acessar o console texto 3
Ctrl+Alt+F4 Acessar o console texto 4 E assim ...
Ctrl+C Normalmente interrompe um processo.
Ctrl+Alt+F7 Acessar o primeiro console ocupado pelo ambiente gráfico
Ctrl+Alt+F8 Acessar o segundo console ocupado pelo ambiente gráfico
Ctrl+Alt+del Sair do Linux.
Ctrl+Alt++/- (Mudar resolução do X, quando você escolheu mais de uma na configuração. Veja que é o + ou - do teclado numérico).
Acho não nem tem como saber quantos e quais são, nestes endereços tem algumas dicas sobre isto
No prompt tecle tab duas vezes e depois responda y para ver todos os comandos disponiveis no seu micro.