Projeto Interdisciplinar I (LPIC-I) - Aula 3
 

Tópico 103.5 -Processos

Objetivos:

  • Executar jobs em background (&) e foregroud
  • Enviar sinal a um programa para ele executar após o fechamento de um terminal (nohup).
  • Monitorar processos
  • Enviar sinais a um processo

Lista de Comandos:

  • bg: Usado para colocar um precesso para executar em BACKGROUND. Esse processo deve estar PAUSADO no terminal atual.

  • fg: Usado para colocar um precesso para executar em FOREGROUND. Esse processo deve estar PAUSADO no terminal atual.

  • jobs: Um trabalho (job) é um processo executado em um terminal, esse comando é usado para listar esses jobs.

  • kill: Usado dentre outras coisas para matar processos. O que o comando kill faz é enviar sinais aos processos.

  • nohup: Usado para "desvincular" um processo de um terminal. Ou seja, ao se iniciar um processo com o comando nohup pode-se fechar o terminal onde o processo foi iniciado e o mesmo contunuará executando.

  • ps: Usado para listar informações dos processos na memória do sistema.

  • pstree: Exibe a "arvore de processos".

  • top: É um "gerenciador de tarefas" em modo texto. Com ele é possível listar, matar, redefinir prioridade de processos, dentre outras atividades.

  • free: Exibe informações sobre a memória do sistema

  • uptime: Mostra a quanto tempo o sistema esta no ar.

  • killall: Permite matar um processo pelo nome do comando ao invés do PID.

Leitura Recomendada:

Neste post do Linux developer Works você encontra um ótimo tutorial sobre este tópico. Em inglês.

Exemplos de questões:

O que faz o comando “kill -HUP 1354”?
	
A. Mata o processo 1354 abruptamente.
B. Mata o precesso 1354 permitindo que saia suavemente.
C. Reinicia o precesso 1354, relendo os arquivos de configuração.
D. Reinica o precesso 1354 reiniciando o modem associado.

Resp: C

Qual das seguintes linhas irá executar ambos os comando independente da saída de cada um?

A. command1 | command2
B. command1 $ command2
C. command1 & command2
D. command ; command2
E. command1 ^ command2
	

Resp: D

Qual o comando pode ser usado para visualizar a hierarquia de processos?
	

Resp: PSTREE

Tópico 103.6 -Prioridade de Processos

Objetivos:

  • Conhecer a prioridade com a qual um processo é criado.
  • Executar um programa com uma prioridade pré-definida
  • Mudar a prioridade de um processo que está em execução
  • Enviar sinais a um processo

Lista de Comandos:

  • nice: comando usado para estabelecer a prioridade de um processo na sua inicialização (quando o usuário executa).

  • ps: Neste tópico 103.6 estamos preocupados em como usar o comando ps para descobrir a prioridade de um processo.

  • renice: comando usado para redefinir a prioridade de um precesso em execução.

  • top: Neste tópico 103.6 estamos preocupados em como usar a ferramenta top para coletar informações de prioridade, como também redefinir a prioridade de um precesso que está em execução.

Leitura Recomendada

Neste post do Linux developer Works você encontra um ótimo tutorial sobre este tópico. Em inglês.

Exemplos de questões:

Quais dos seguintes programas podem ser usados para mudar a prioridade de um processo (escolha dois)?

A. top
B. nice
C. niceit
D. renice
E. chnice
	

Resp: A,B

Tópico 103.4 -Fluxos, Pipes e Redirecionamento

Objetivos:

  • Redirecionamento de Entrada e Saida Padrão e de Erro.
  • "Acoplar" a saída de um comando na entrada de outro.
  • Usar a saída de um comando na entrada de outro
  • enviar uma sáida para arquivo e saída padrão

Lista de Comandos:

tee e xargs.

Leitura Recomendada

Neste post do Linux developer Works você encontra um ótimo tutorial sobre este tópico.

Exemplos de questões:

Voce precisa direcionar a saída de um executável (myprog) para um arquivo file.out. Nenhuma saída deve aparecer no console. Com qual das opções abaixo se consegue esse resultado.

A. myprog > file1.out 2>&1
B. myprog > file1.out 1>&2
C. myprog >file1.out 1> /dev/null
D. myprog 1&2> file1.out
E. myprog 1> /dev/null > file1.out
	

Resp: A

Tópico 103.2 -Processamento de Textos e Filtros

Objetivos:

Enviar arquivos textos através de fluxos para modificar a saída gerada usando comandos do sistema, fornecidos pelo pacote textutils.

Lista de Comandos:

  • cat: O uso principal deste comando é exibir conteúdo de arquivos textos, porém a sua finalidade é CONCATERNAR arquivos.

  • cut: Usado para recortar colunas em arquivos textos e exibi-las na saída padrão, o arquivo permanece inalterado.

  • expand: Converte tabulações para espaços exibindo o resultado na saída padrão. O arquivo original não é alterado.

  • fmt: Formata um texto para exibição na saída padrão.

  • head: Exibe as primeiras linhas de arquivo passado como parâmetro.

  • od: Faz um dump do arquivo exibindo o seu conteúdo em octal, hexa, decimal ou asc.

  • join: Executa o JOIN (Junção) de linhas de dois arquivos baseados em um campo informado.

  • nl: É usado para exibir na saída padrão as linhas de um arquivo adicionando a sua numeração.

  • paste:É usado para colar linhas de dois ou mais arquivos lado a lado.

  • pr: Formata um arquivo texto para impressão.

  • sed: Editor de textos não interativo.

  • sort: Ordena as linhas de um arquivos.

  • split: Divide o conteúdo de um arquivo em vários. Para juntar novamente usa-se o comando cat.

  • tail: Usado para exibir as linhas finais de um arquivo.

  • tr: usado para trocar caracteres de um arquivo.

  • unexpand: converte espaço para tabulações exibindo o resultado na saída padrão.

  • uniq: unifica linhas VIZINHAS duplicadas em um arquivo ou fluxo de dados.

  • wc: comando usado para contar palavras, linhas ou bytes de um arquivo ou fluxo de dados.

Leitura Recomendada

Neste post do Linux developer Works você encontra um ótimo tutorial sobre este tópico.

Exemplos de questões:

Qual dos seguintes comandos copiará o arquivo file1.txt para file2.txt? Escolha dois.
	
A.  cat file1.txt > file2.txt 
B.  cat file1.txt | file2.txt
C.  cp file1.txt > file2.txt
D.  cp file1.txt file2.txt
E.  cpio < file1.txt > file2.txt 
	

Resp: A,D

Para mudar todas as letras minúsculas por maiúsculas no arquivo file, qual o comando correto?

A. tr 'a-z' 'A-Z' file
B. tr [a-z] [A-Z] < file
C. tr "a-z" "A-Z" file
D. tr 'a-z' 'A-Z' < file
E. tr {a-z} {A-Z} > file

	

Resp: C

Qual dos seguintes comandos irá mostrar as 10 linhas do meio de um arquivo de 30 linhas nomeado textfile?

A. head -n 11-20 textfile
B. head -n 20 textfile | tail
C. tail -n 11-20
D. cat textfile pr -n 11-20
E. nl -n 11-30 textfile
	

Resp: B

Qual destes comandos irá informar a quantidade de usuários do sistema:

A. count /etc/passwd
B. nl /etc/passwd | head
C. wc --users /etc/passwd
D. wc --lines /etc/passwd
E. expand --lines /etc/passwd

	

Resp: D