You are on page 1of 7

Linux

1 PREPARANDO A MQUINA VIRTUAL


Inicialize o gerenciador de mquina virtual (Virtual PC Console); Crie uma mquina virtual (aloque, pelo menos 500Mb de RAM para a instncia) Mapeie a unidade de CD apontando para a iso da distribuio DSL (ou outra qualquer) o A distribuio DSL encontra-se disponvel em: http://www.ppgia.pucpr.br/~pacheco/SO/

2 PREPARANDO O AMBIENTE DE USO


Proceda a atualizado do GNU Utils

Proceda a habilitao do Apt

Acesse o MyDSL Browser

Atualize o Database (Update Database)

Em text search localize gcc e selecione gcc with libs

Duplo clique na ltima opo e, ento, selecione Install Selected

3 SHELL E COMANDOS BSICOS


Abra um Shell

Lista dos comandos mais comuns:

man: acesso ao help de um comando (ex: man ls) ls : lista contedo de diretrio (veja outras opes: ex: "ls -l") cd : muda diretrio (. : diretrio corrente; .. : diretrio pai) pwd : mostra o caminho absoluto (desde a raiz do sistema de arquivos) do diretrio corrente mkdir : cria novo diretrio rmdir : remove (deleta) diretrio vazio rm : remove (deleta) arquivo more : mostra contedo de arquivo (<enter>: prxima linha; <espao> : prxima pgina; q : sair) date : data atual cp : copia arquivos. Sintaxe: cp <arq_origem> <dir_destino ou nome_destino> mv : move ou renomeia arquivos ou diretrios (como cp).

Ver: linux-command-reference-list.pdf

4 COMPILAO EM LINUX
Primeiramente crie um diretrio e modifique as permisses deste (chmod 777 <dir>). Crie um um programa

C/C++ que imprime na tela os primos de 1 a 1000. Salvar o arquivo com o nome primo.cpp

Para compilar execute, no console: $ g++ primo.cpp Compila programa "primo.cpp" e gera executvel (em caso de sucesso) chamado "a.out". $ g++ -o nomeprog primo.cpp Compila programa "primo.cpp" e gera executvel (em caso de sucesso) chamado "nomeprog". ATENO! Para programa em C, utilize gcc ao invs de g++. Digite o nome do executvel gerado: $ nomeprog Modifique o programa anterior e utilize os argumentos, argc e argv, para receber os parmetros dos limites (veja o help de atoi). O nome do programa deve ser primo2.cpp (utilize o cp para fazer uma cpia do primeiro programa)

5 REDIRECIONAMENTO DE SADA PADRO

Implemente dois programas e compile-os com o mesmo nome base: escrever.cpp


#include <stdio.h> int main(int argc, char *argv[]) { printf("Aula de S0\n"); printf("3.14\n"); return 0; }

ler.cpp
#include <stdio.h> int main(int argc, char *argv[]) { char texto[100]; float pi; scanf("%s",texto); printf("Texto obtido da entrada: \"%s\"\n",texto); scanf("%f",&pi); printf("Valor obtido da entrada: %f\n",pi); return 0; }

$ escrever.o | ler.o

Alguns filtros disponveis como comandos da shell:



cat: concatena um ou mais arquivos enviando o seu contedo para a sada padro; tac: idem, mas inverte a ordem das linhas; tr: troca de caracteres entre 2 conjuntos; head: seleciona as n linhas iniciais do fluxo de dados; tail: seleciona as n linhas finais do fluxo de dados; wc: conta o nmero de linhas, palavras e bytes do fluxo de dados; sort: ordena as linhas de acordo com critrios ajustveis; uniq: remove linhas repetidas deixando apenas uma de cada; sed: para operaes complexas com strings (por exemplo, substituies, etc.); grep: seleciona linhas contendo uma determinada expresso;

6 THREADS EM LINUX

$ g++ -pthread o th.o th.cpp

You might also like