A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Tema 1 Introdução a Linux Pablo Gamallo Otero

Apresentações semelhantes


Apresentação em tema: "Tema 1 Introdução a Linux Pablo Gamallo Otero"— Transcrição da apresentação:

1 Tema 1 Introdução a Linux Pablo Gamallo Otero http://gramatica.usc.es/~gamallo/

2 PLANO  Software livre  Alguns comandos do shell de GNU/LINUX

3 Bibliografia  Jordi Mas i Hernández (2007), Software Libre, Biblos, A Coruña.  http://aurelio.net/shell/

4 Software livre código fonte = receita de cozinha - Sem acesso ao código fonte, só podemos usar o software, não podemos ver como está feito ou introduzir melhoras. - O software livre permite o acesso ao código fonte (receita) - A filosofia do software livre provém da ética hacker: partilhar os resultados com o resto da comunidade

5 Software livre - Aparece a microinformática (princípios dos 80) - Aparecem as primeiras companhias de software - Aparece o código fechado ou privativo (o software se vende sem o código fonte)

6 Software livre - Em 1985, Richard Stallman funda a Free Software Foundation, com o objectivo de construir um sistema operativo Unix livre: GNU. - Stallman promulga a liberdade de melhorar o software e fazer públicas as melhoras aos demais de modo que toda a comunidade se poda beneficiar. - Stallman utiliza os termos “privativo” e “proprietário” para refererir-se aos programas que não são livres (Adobe Acrobat, Windows,...)

7 Software livre software livre NÃO É software gratuito - free software / open source (código aberto) - “free” significa livre e gratuito (as empresas não gostam) - Open Software Iniciative: uso do termo “código aberto”

8 Software livre - Em 1991, o estudante finlandês Linus Torvalds construi o núcleo do sistema operativo inspirado em Unix: Linux - Aparecem as primeiras distribuições GNU/Linux que inserem no núcleo Linux as ferramenta do projecto GNU - Stallman utiliza os termos “privativo” e “proprietário” para refererir-se aos programas que não são livres (Adobe Acrobat, Windows,...)

9 Software livre - Escritórios gráficos do sistema Linux: - KDE (liberou o código no 2000) - GNOME (sempre usou código aberto) - Netscape / Mozilla / Firefox em 1998, Netscape libera o seu navegador. - OpenOffice.org em 1999, Star Office é liberado e começa o projecto OpenOffice. Outro software livre conhecido - Apache o 70% dos servidores web em 2005 usavam este software

10 Software livre Tipos de licenças: - GPL (General Public License): regula software com código aberto, de uso e distribuição gratuitos, mas impede que se redistribua numa versão comercial e/ou com código proprietário - freeware: uso e distribuição gratuitos, mas o código não se pode modificar (não é código aberto) - shareware: permite-se que o usuário use e avalie o software durante um período de tempo determinado antes de pedir ao usuário que se registre e pague.

11 Sistema operativo GNU/LINUX 3 componentes: - kernel: o núcleo do sistema operativo (o Linux de Linus Tovald) - shell: interface entre o usuário e o kernel - aplicações: As diferentes distribuições de GNU/Linux diferenciam-se polo tipo de aplicações que incorporam ao sistema.

12 GNU/LINUX Características - multitarefa - multiusuário: vários usuários podem utilizar o sistema ao mesmo tempo - multiplataforma - maior estabilidade em relação a Windows - não precisa ser reiniciado devido à instalação de programas ou configuração de periféricos - não existem vírus - permite o acesso a discos formatados por outros sistemas operativos

13 GNU/LINUX Alguns comandos do shell - ls (lista os ficheiros e subdirectórios do directório actual) - pwd (rota actual) - mkdir (criar um subdirectório) - cd (câmbio de directório) - echo “olá” > prova.txt (criar um ficheiro de texto) - cp, mv (copiar, mover e renomear ficheiros) - rm (borrar ficheiros) - cat (ler o conteúdo de um ou vários ficheiros de entrada) - wc (conta linhas, palavras e caracteres dos ficheiros de entrada)

14 GNU/LINUX Primeira práctica - cria o directório “meu_nome” - coloca-te no directório meu_nome - cria nesse directório dous subdirectorios: “scripts” e “corpus” - cria dentro de corpus o ficheiro “prova.txt” com o texto “isto é uma prova” - lê o conteúdo do ficheiro prova.txt - conta as linhas, palavras e caracteres de “prova.txt” - borra o ficheiro “prova.txt”

15 GNU/LINUX Primeira práctica Fai o mesmo utilizando ferramentas do sistema gráfico e editores de texto como gedit e OpenOffice - Para listar, mover-te na hierarquia de directórios e criar novos subdirectórios, utiliza KONKEROR - Para criar novos ficheiros, utiliza o editor gedit - Para contar palavras e caracteres, utiliza OpenOffice

16 GNU/LINUX Segunda práctica Objectivo: Procurade “El Quijote” por Internet, guardade o ficheiro no directório “corpus” visualizade o ficheiro na consola e contade as palavras e caracteres do texto - busca com Firefox no site http://www.gutenberg.org/ - borra o metatexto que não pertence ao livro de Cervantes - fai a contagem com OpenOffice e com o comando wc - fazede o mesmo com cat usando a técnica dos pipes “|” - provade também o comando more

17 GNU/LINUX Segunda práctica O shell permite a construção de comandos complexos através da combinação de vários comandos simples. O operador "|", conhecido como pipe, ou tubo, permite conectar a saída de um comando à entrada de outro. - visualizade o ficheiro: cat ElQuijote.txt - visualizade o ficheiro pantalha a pantalha: more ElQuijote.txt - Contade as linhas, palavras e bytes dum ficheiro: wc ElQuijote.txt

18 GNU/LINUX Segunda práctica O shell permite a construção de comandos complexos através da combinação de vários comandos simples. O operador "|", conhecido como pipe, ou tubo, permite conectar a saída de um comando à entrada de outro. cat ElQuijote.txt | more cat ElQuijote.txt | wc

19 GNU/LINUX Segunda práctica Como está codificado o ficheiro ElQuijote.txt ? - Comprova a codificação com o camando file : file ElQuijote.txt Que devolve esta informação: “UTF-8 Unicode English text with CRLF line terminators” - Isto significa que a codificação é Unicode UTF-8, mas tem saltos de linha CR e LF

20 GNU/LINUX Segunda práctica Eliminar saltos de linha CR: Dos2Unix.x ElQuijote.txt Tira fora os saltos de linha CR, próprios de sistemas alheos a linux, e fica com LF

21 GNU/LINUX Segunda práctica Unicode -> Latin - lê o ficheiro com o comando cat - a codificação do ficheiro é Unicode (UTF-8). - como vamos usar ferramentas que precissam ter texto codificado em Latin ( ISO-8859-1 ), então, devemos aprender a mudar a codificação: cat ElQuijote.txt | iconv -f UTF-8 -t ISO-8859-1 Na seguinte práctica, simplificaremos o procedimento

22 GNU/LINUX Terceira práctica Objectivo: Cria 2 ficheiros executáveis: - de Unicode a Latin 1 - de Latin 1 a Unicode 1. Cria um ficheiro UnicodeToLatin.x contendo o seguinte comando: iconv -f UTF-8 -t ISO-8859-1 2. Cria um ficheiro LatinToUnicode.x contendo o seguinte comando: iconv -f ISO-8859-1 -t UTF-8

23 GNU/LINUX Terceira práctica Podemos dar três tipos de permissões aos ficheiros: - Podem ser lidos, - Podem ser escritos - Podem ter código executável chmod +r ficheiro (permite a leitura) chmod +w ficheiro (permite a escrita) chmod +x ficheiro (permite a execução)

24 GNU/LINUX Terceira práctica Já podemos convertir o ficheiro codificado em Unicode a Latin: cat ElQuijote.txt |./UnicodeToLatin.x > ElQuijote_latin.txt

25 GNU/LINUX Quarta práctica Objectivo: Conta o número de ocorrências das expressões: “Quijote”, “Don Quijote”, “Sancho”, “Sancho Panza”, “Dulcinea”, “Dulcinea del Toboso”,... cat ElQuijote.txt | grep “Quijote” | wc Comando “grep”: selecciona as linhas do texto que contenham uma sequência de caracteres (ou string) específica

26 GNU/LINUX Outros comandos de interesse head -N (escreve as primeiras N linhas do texto) tail -N (escreve as últimas N linhas do texto) head -N | tail -1 (escreve a N linha) head -5 (escreve as primeiras 5 linhas do texto) tail -11 (escreve as últimas 11 linhas do texto) head -12 | tail -1 (escreve a linha 12)

27 GNU/LINUX Quinta práctica Objectivo: Criar um ficheiro executável, chamado “linha.x”, que escreva a linha do texto que lhe digamos. cat ElQuijote.txt |./linha.x 5 (escreve a linha 5 do texto) Solução: head -$1 | tail -1

28 GNU/LINUX Sexta práctica Objectivo: Criar um ficheiro executável, chamado “linhas.x”, que escreva as linhas do texto que lhe digamos. cat ElQuijote.txt |./linhas.x 10 3 escreve as 3 últimas linhas até chegar à linha 10 (de 8 a 10) cat ElQuijote.txt |./linhas.x 33 10 escreve as 10 últimas linhas até chegar à linha 33 (de 24 a 33) Solução: head -$1 | tail -$2

29 GNU/LINUX Séptima práctica Objectivo: melhorar o “linhas.x” para criar linhas2.x cat ElQuijote.txt |./linhas2.x 3 10 escreve da linha 3 à linha 10 cat ElQuijote.txt |./linhas2.x 10 33 escreve da linha 10 à linha 33 Solução: ((N = $2 - $1 + 1)) head -$2 | tail -$N

30 GNU/LINUX Séptima práctica Outra maneira de fazer linhas2.x ((N = $2 - $1 + 1)) linhas.x $2 $N Colocade “linhas.x” num directório /bin

31 GNU/LINUX Mais práticas Podedes praticar mais em : http://aurelio.net/shell/apostilha-introducao-shell.pdf http://es.tldp.org/Manuales-LuCAS/AA_Linux_colegio- 1.1/AA_Linux_colegio-1.1-html/x3772.htm http://www.ppgia.pucpr.br/~maziero/ensino/sei/shell-bash-basico.html http://www.openslack.org/~piterpk/artigos/aposhell.ps

32 GNU/LINUX Comandos mais interessantes para processamento de texto cat : concatena diversos arquivos. tac : idem, mas inverte a ordem das linhas. more : permite a paginação. tr : troca de caracteres entre dois conjuntos. head : seleciona as "n" linhas iniciais. tail : seleciona as "n" linhas finais. wc : conta o número de linhas, palavras e bytes. sort : ordena as linhas segundo critérios ajustáveis. uniq : elimina linhas repetidas, deixando uma soa linha. sed : para operações complexas de strings (trocas, etc). grep : selecciona linhas contendo uma determinada expressão. cut : selecciona colunas do fluxo de entrada. rev : reverte a ordem dos caracteres de cada linha.


Carregar ppt "Tema 1 Introdução a Linux Pablo Gamallo Otero"

Apresentações semelhantes


Anúncios Google