# 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.txttouch teste2.texttouch learnlatex.textouch 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 oldsmv 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 oldsmkdir olds # Mais cópia de arquivos. Executar: cp teste1.tex ahan.texcp naosei.txt aiaiai.txt Executar o comando "ls" e comentar o resultado da obtido. # Executar: touch movera1touch movera2mv movera1 exempl.expmv 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.testdigite seu nomeidadenome dos paisparte inicial do programa da semana acadêmica (procure repetiralgumas 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 encontradano 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 maisumrmdir maisumrmdir 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.hcleartail /usr/include/time.hcleartail -f /usr/include/time.hCtrl-Dclearmore /usr/include/time.hqclearless /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 $SHELLecho $PATHecho "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 essenú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 ouls -lt >> log A diferenca enter o > e o >> é que o primeiro escreve porcima apagando o arquivo caso exista. No segundo é realizadoum append das informações. Fazer um teste com arquivoscriados 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