# Realizar o login no sistema digitando o solicitado (username e senha)
# O comando mais útil do Linux é o "man". Esse comando é
utilizado para mostrar páginas de ajuda no Linux, sobre comandos variáveis de ambiente e etc. Para exercitar, digite o comando abaixo para obter ajuda sobre o funcionamento do próprio "man" (para sair do man basta pressionar a tecla q):
man man
# Para cada um dos comandos mostrados a seguir, leia o "man" antes
de utilizar o comando.
# Criar um diretório (pasta) para a execução dos exercícios propostos.
No prompt digitar:
mkdir sobrenome
onde sobrenome é o seu nome de família
# No prompt digitar:
cd sobrenome
# Todos os exercícios dessa lista deverão ser executados dentro deste diretório.
Nesse execício foram utilizados dois comandos básicos do Linux:
cd == change directory
mkdir == make directory
# A seguir utilizar o comando "ls" para listar o conteúdo de diretórios
e o comando "touch" para mudar os dados relativos a criação de um arquivo.
Uma observação importante sobre o comando "touch" é que quando utilizado com um nome de arquivo que não existe, o arquivo será criado.
# No prompt executar a seguinte sequência:
ls
(o diretório deverá estar vazio)
touch teste1.txt
touch teste2.text
touch learnlatex.tex
touch xalala.extension
# Utilizar novamente o "ls" para listar o conteúdo do diretório após
as operações realizadas. A saida deverá ser a seguinte:
learnlatex.tex teste1.txt teste2.text xalala.extension
# Para obter a listagem do diretórios em colunas, e com mais detalhes
sobre cada arquivo, digitar o seguinte:
ls -l
# A saida deverá ser a seguinte:
-rw-rw-r-- 1 user group 0 Jun 4 12:30 learnlatex.tex
-rw-rw-r-- 1 user group 0 Jun 4 12:30 teste1.txt
-rw-rw-r-- 1 user group 0 Jun 4 12:30 teste2.text
-rw-rw-r-- 1 user group 0 Jun 4 12:30 xalala.extension
onde "user" é o nome do usuário (dono do arquivo), e "group" é
o group no qual o usuário faz parte.
# Listar o conteúdo de um diretório, ordenando os arquivos
por ordem de criacao:
ls -lt
Executar o comando "ls" e comentar o resultado da obtido.
# Executar:
touch teste1.tex
# Executar novamente "ls -lt" e comparar o fornecido com
a listagem anterior. Alguma diferença?
# Utilizar o comando "cp" para copiar arquivos, e o comando
"mv" para mover arquivos (ou renomear). Executar:
cp teste1.tex teste2.tex
Executar o comando "ls" e comentar o resultado obtido.
mv teste1.tex teste1.tex.old
Executar o comando "ls" e comentar o resultado da obtido.
# Utilizar o comando "mkdir" para criar diretórios. Executar:
mkdir olds
mv teste1.tex.old olds/
Executar o comando "ls" e comentar o resultado da obtido.
# Executar a seguinte seqüência de comandos, mesmo que
já tenham sido executados anteriormente, e comentar o
resultado obtido:
mkdir olds
mkdir olds
# Mais cópia de arquivos. Executar:
cp teste1.tex ahan.tex
cp naosei.txt aiaiai.txt
Executar o comando "ls" e comentar o resultado da obtido.
# Executar:
touch movera1
touch movera2
mv movera1 exempl.exp
mv exempl.exp olds/
mv movera2 newfile.tmp
Executar o comando "ls" e comentar o resultado obtido.
# Desafio: utilizar o comando "ls" para listar todos os arquivos
com extensao .tex =)
# Comando "grep" para pesquisa de palavras em arquivos. Criar um
arquivo com algumas linhas de texto. O nome do arquivo será
xalala.test. Digitar a seguinte seqüência:
# (verifique a diferença entreo grep, egrep e o fgrep utilizando o man.)
cat > xalala.test
digite seu nome
idade
nome dos pais
parte inicial do programa da semana acadêmica (procure repetir
algumas palavras em mais de uma linha)
pressionar Ctrl-D para encerrar o arquivo.
Digitar:
cat xalala.test | grep ???
Onde ??? é a palavra (ou parte da palavra) a ser encontrada
no arquivo xalala.test.
# Utilizar o comando acima para mostrar que existem as
seguintes palavras no arquivo criado: "nome", "sobrenome",
"nome do pai", "para", "que"
# Utilizar o comando "rmdir" para remover diretórios VAZIOS.
O comando "rm" com a opção "recursive", pode ser utilizado
para remover diretórios que nao estejam vazios (use o man
para ver como fazer isso).
mkdir maisum
rmdir maisum
rmdir testes
# Remocao de diretórios e arquivos. Utilizar o comando "rm"
para remover os arquivos "teste1.tex" e "teste2.tex". Remover
tambem o diretório "teste2".
# Utilizar o comando "tail" para listar o final de um arquivo. Esse
comando mostra as últimas 10 linhas (ler o man do comando). "tail -f"
mostra as últimas 10 linhas do arquivo e qualquer nova linha que
seja adicionada a esse arquivo. Criar um arquivo texto (com cat ou touch)
com pelo menos umas 20 linhas, e execute "tail nome_do_arquivo" sem opções
nesse arquivo. A seguir execute "tail -f nome_do_arquivo", onde
"nome_do_arquivo" é o nome dado ao arquivo na criação. Para sair
do "tail -f" utilizar Ctrl-C.
# Utilizar o comando "cat nome_do_arquivo" para listar na
tela o conteúdo de um arquivo. Executar "cat" com o arquivo
criado para o exemplo anterior e comentar a diferença entre
a saída fornecida pelo "cat" e pelo "tail".
# O comando "more" é semelhante ao "cat", porém apresenta
o conteúdo do arquivo quadro-a-quadro. é semelhante ao
funcionamento do "man". Pressionar a barra de espaço para
avançar uma página inteira e a tecla "enter" para avançar
linha-a-linha.
# O comando é semelhante ao "more", porem permite
navegar pelo arquivo.
# Digitar a seguinte seqüência de comandos ("clear" limpa a tela):
cat /usr/include/time.h
clear
tail /usr/include/time.h
clear
tail -f /usr/include/time.h
Ctrl-D
clear
more /usr/include/time.h
q
clear
less /usr/include/time.h
Use as setas para navegar no texto.
Comentar as diferencas observadas entre os comandos executados.
# O comando "echo" é bastante utilizado em scripts para mostrar
informações na tela. Executar a seguinte seqüência de comandos:
echo "teste"
echo $SHELL
echo $PATH
echo "ahanahanahan" > teste.echo
Comentar as saidas fornecidas.
# O comando "history" mostra o histórico de comandos digitados na seqüência
e ordenadamente. Executar "history" no prompt e observar o resultado
fornecido na tela.
# O comando "!" é bastante importante na economia de tempo
na digitação de comandos. Ao se digitar "!!" no prompt, o
último comando será executado novamente. Caso seja digitado
"!ca" no prompt, o último comando que inicia por "ca"
será executado novamente. Ao se executar !2 o segundo comando
será executado novamente (provavelmente foi a criacao do
diretório no inicio dessa bateria de exercícios). Executar
no prompt:
history
Observar o número que precede o comando "cat /usr/include/time.h"
executado anteriormente. Digitar o comando "!" seguido por esse
número:
!n
onde "n" é o número do comando "cat /usr/include/time.h".
# Pipes são bastante importantes no dia-a-dia do usuário
Linux. Por exemplo, para listar o conteúdo de um diretório mostrando
todos os atributos dos arquivos e ordenados por data basta utilizar
o comando "ls -lt". Porém a lista de arquivos é muito longa e não
cabem todos na tela. Utilizar um pipe da seguinte maneira:
ls -lt | more
# Outra opção para o problema acima seria redirecionar a saida
da listagem de arquivos para um arquivo, e depois utilizar
comandos tipo "more" ou "less" para ver o arquivo. Para
redirecionar a saida do "ls", utilizar:
ls -lt > log ou
ls -lt >> log
A diferenca enter o > e o >> é que o primeiro escreve por
cima apagando o arquivo caso exista. No segundo é realizado
um append das informações. Fazer um teste com arquivos
criados anteriormente.
# O comando "chmod" é utilizado para alterar as permissões
de um arquivo. Utilizar esse comando para alterar as
permissões do arquivo "xalala.test", de acordo com as
dicas vistas na aula teórica. Para mais detalhes sobre
o "chmod", utilizar o "man".
# O comando "chown" altera o dono do arquivo (change owner).
Executar esse comando para alterar o dono do arquivo
xalala.test para um colega da turma.
# O comando "date" mostra a data do sistema. Executar
esse comando e observar o resultado.
# O comando "spell" verifica erros ortográficos em
palavras ou textos. Digitar "spell xalala.test" e
verificar a longa lista de erros de ortografia ("spell"
utiliza dicionário de inglês). Digitar "spell" seguido
de Enter, e forneça algumas palavras, intercaladas
por Enter. Ao encerrar a digitação da lista de palavras,
pressionar Ctrl-D para finalizar a entrada de dados.
será apresentada a lista de palavras não encontradas
no dicionário do "spell".
# O comando "wc" informa o número de palavras, linhas
e caracteres existentes em um arquivo. Digitar:
wc xalala.test
Comentar o resultado obtido.
# O comando "df" mostra a porcentagem do disco que
foi utilizada.
# O comando "du" mostra a ocupação em Mega bytes de
um arquivo, diretório ou disco. Utilize "man du"
para descobrir mais sobre esse comando.
# Utilizar o comando "locate" (ou "whereis") para
localizar arquivos:
locate mkdir
# Utilizar o comando "find" para localizar arquivos a
partir de um determinado diretório:
find /home -name xalala.test
# Utilizar o comando "whoami" (quem sou eu) para
saber quem está logado.
# O comando "which" pode ser utilizado para mostrar o
caminho completo de um comando. Executar:
which mkdir
Comente o resultado.
# O comando "users" é utilizado para mostrar os
usuários conectados na máquina.
# O comando "w" é utilizado para mostrar os
usuários conectados na rede a qual a máquina
está conectada.
# O comando "ps" mostra os processos em execução
na máquina. Os comandos "ps -elf" e "ps -gaux"
mostram mais detalhes desses processos.
# O comando "kill" é utilizado para matar processos
na maquina. Utilizar primeiro o comando "ps" para
descobrir o ID do processo a ser eliminado.
# O comando "talk" é utilizado para chat com
outro usuário conectado na mesma maquina. Ver o
man
.~.
/v\
// \\
/( )\
^`~`^ linux.org