Initial commit. In a broken state, do not use.

This commit is contained in:
Storm Dragon
2019-12-11 14:39:33 -05:00
parent 5dea87f44a
commit 1237ab3fd9
1039 changed files with 187732 additions and 0 deletions

View File

@ -0,0 +1,3 @@
# Index
@. Installation-and-Execution-of-Fenrir @. First-Steps-With-Fenrir @. Knowing-the-Computer@. First-Steps-With-Fenrir @. Operating-System @. Archiving @. Check-Directory @. Create-File @. Change-Directory @. Create-Directory @. Install-Packages @. Introduction-to-Irssi @. Messaging-With-Irssi @. Edition-With-Nano @. Nano-Navigation @. View-File-Content @. Using-Wget @. Play-Music-and-Video @. Using-Find @. Introduction-to-Markdown @. Emphasis-of-Texts @. Links-on-Markdown @. Convert-to-Markdown @. Manipulate-Files @. Compression-With-Tar @. Compression-With-Zip @. Using-Grep @. Protocols @. Servers @. Using-Rsync @. Using-SSH @. Using-Diff @. Introduction-to-Mutt @. Contact-List @. Lists-in-Markdown @. Footnotes @. Using-SFTP @. Using-Touch @. Advanced-Package-Management-Options @. Using-Alias @. Permissions @. Assign-Permission @. Change-File-Owner @. Introduction-to-Partitions @. File-System @. Identifying-Disks-and-Partitions @. Disk-Formatting @. Introduction-to-git @. Git-Configuration @. Cloning-and-Adding-Files @. Commit-Pull-and-Push @. Using-Screen @. Using-Sha1Sum @. Custom-Mutt-Shortcuts @. Configure-Fenrir-From-The-Settings-File @. Configure-Fenrir-From-The-Command-Line

View File

@ -0,0 +1,35 @@
# Compactação e Descompactação
## Compactação e Descompactação Com Tar
Agora, veremos como trabalhar com compactação e descompactação com um padrão de compressão bastante popular no Linux, o "Tar". Vale notar que o "tar" sozinho não serve para compactar arquivos. Ele apenas os empacota, afim de facilitar a transferência. Portanto, utilizaremos o "tar" em conjunto com o "zip", o primeiro empacota e o segundo compacta.
## Compactação
Para compactar o diretório Documentos, utilizamos o seguinte comando:
* tar -cz Documentos > doc.tar.gz* O parâmetro "-cz" indica que o arquivo "tar" será criado (-c), e será compactado pelo "zip" (-z) usando redirecionamento, representado pelo sinal de maior (>). Observação: O "tar" já é automaticamente recursivo.
## Descompactação
Para descompactar o arquivo ".tar.gz" que foi criado, usamos o seguinte comando: *tar -xz < doc.tar.gz* Perceba que há apenas duas diferenças em relação ao comando de compactação, a presença de "-x" de "extract", para extrair os arquivos e a direção do redirecionamento, representada pelo sinal de menor (<), que agora em vez de indicar saída de dados, indica entrada de dados.
## Eliminando o Redirecionamento
Trabalhar com redirecionamento não é uma boa ideia. Para resolver isso, o "tar" possui o parâmetro "-f". Exemplo: *tar -czf doc.tar.gz Documentos/* Desse modo, primeiro temos o nome do arquivo a ser gerado, e depois o diretório a compactar.
Para descompactar, usamos o comando a seguir: *tar -xzf doc.tar.gz*
O "tar" não é verborrágico por padrão, como o "zip". Mas se quiser exibir as informações, basta usar o parâmetro "-v". Exemplo: *tar -vxzf doc.tar.gz*
### Exercícios
1. Escolha um diretório para compactar e vá até seu diretório pai.
2. Compacte o diretório usando o "tar" com redirecionamento e exiba as informações na tela.
3. Remova o diretório e descompacte o arquivo com redirecionamento.
4. Remova o arquivo anterior e compacte o diretório sem redirecionamento.
5. Remova novamente o diretório e descompacte sem redirecionamento.

View File

@ -0,0 +1,27 @@
# Compactação e Descompactação
## Compactação e Descompactação com zip
O Linux, por padrão, possui vários utilitários de compressão de arquivos. Compactar arquivos e diretórios é uma boa prática para realização de "backups". Veremos alguns comandos de compressão, começando pelo zip.
Vamos compactar o diretório Documentos criado anteriormente. Ele possui atualmente dois arquivos de texto, dados e teste. Dentro do diretório, primeiramente devemos usar o comando: *cd ..* Para voltar ao diretório pai. Para compactar um arquivo com o zip, é necessário adicionar o parâmetro "-r", caso contrário o arquivo compactado terá apenas um diretório vazio. O comando é composto pelo zip, seu parâmetro de recursividade, o nome do arquivo zip que pretende gerar, e, por último, o diretório a ser compactado no arquivo. Exemplo: *zip -r doc.zip Documentos/* O arquivo compactado doc.zip será gerado. Será exibido cada arquivo adicionado no arquivo compactado.
Se quiser verificar o conteúdo do arquivo compactado, pode usar o comando: *unzip -l doc.zip*
Para descompactar o arquivo, use o seguinte comando: *unzip doc.zip*
Se o arquivo for descompactado no mesmo local e o diretório ainda existir, seu conteúdo será sobrescrito. Experimente remover o diretório anteriormente compactado antes de descompactar o arquivo gerado. Lembre-se de usar o comando: *ls* para verificar os resultados.
Os comandos: *zip* e *unzip* são muito verborrágicos, ou seja, imprimem muita informação na tela. Se preferir ocultar essas mensagens, utilize o parâmetro "-q". Exemplos: *zip -rq doc.zip Documentos/* *unzip -q doc.zip* No caso do "zip", os parâmetros "-q" e "-r" podem ficar juntos, formando "-rq".
### Exercícios
1. Escolha um diretório para compactar. A partir dele, volte para o diretório pai.
2. Compacte o diretório com todo o seu conteúdo.
3. Verifique o conteúdo do arquivo compactado.
4. Apague o diretório e descompacte o arquivo gerado.
5. Utilize o parâmetro e oculte as mensagens da tela.

View File

@ -0,0 +1,21 @@
# Conceitos Básicos
## Conceito de Arquivo e Diretório
## Arquivo
Um arquivo é um recurso computacional para armazenar informações. O arquivo é durável, ou seja, continua disponível para a utilização mesmo após os programas em execução terem sido finalizados Arquivos de computador são o equivalente moderno dos documentos em papel, que tradicionalmente são armazenados em arquivos de escritórios e bibliotecas, sendo essa a origem do termo. O arquivo possui alguns dados que o identificam: Nome do arquivo: Damos ao criar um arquivo novo. Tamanho: O espaço que ele ocupa na mídia de armazenamento do computador. Extenção: Indica quais os programas podem abrir, ler e gravar no arquivo. A questão de extenção varia por sistema operacional, já que ele é o responsável por implementar o sistema de arquivos. O Linux, por exemplo, não se importa com a extenção do arquivo, deixando a responsabilidade de interpretá-lo corretamente para o programa que o abrir.
## Diretório
O diretório (também chamado de pasta), é considerado um grande arquivo, já que armazena várias informações. Armazena outros diretórios (subdiretórios, já que estão dentro de outro diretório) e arquivos. É uma maneira eficiente de organizar e separar as informações no computador. No Linux, o diretório principal é o "/", também conhecido como "root" ou raiz. Todos os outros subdiretórios e arquivos ficam dentro dele. Possui também um nome e tamanho, o tipo é "diretório".
### Exercícios
1. O que é um arquivo?
2. Qual a origem do termo "arquivo"?
3. Por que o diretório pode ser considerado como um tipo de arquivo?
4. Cite um exemplo de sistema operacional que se importe com a extenção de cada arquivo.

View File

@ -0,0 +1,37 @@
# Conceitos Básicos
## Conhecendo o Computador
O computador é uma máquina capaz de realizar qualquer tipo de computação, ou seja, processar e armazenar informações, realizar cálculos, dos básicos aos científicos, desenho, tratamento de imagens, entretenimento e cultura. Os computadores pessoais e laptops são os aparelhos mais populares quando nos referimos a computador, mas robôs, smartphones (celulares inteligentes) e câmeras também são bons exemplos.
## Parte Física e Lógica
O computador possui o hardware (parte física) e software (parte lógica. Os hardwares são todos os componentes físicos da máquina: Processador, memória, HD, teclado, caixas de som, etc. Os softwares são os programas instalados que fazem a máquina funcionar e executar tarefas específicas: O sistema operacional, o mais importante de todos, pois é ele que gerencia todos os outros programas e recursos do computador, reprodutor de áudio e vídeo, editor de textos, etc.
## Principais Componentes Físicos
É importante ressaltar que um computador é composto por dois tipos de dispositivos físicos: Dispositivos de entrada (input em inglês) e saída (output). Dispositivos de entrada: Responsáveis pela comunicação do homem com a máquina. Exemplos: Teclado, microfone e scanner. Dispositivos de saída: Responsáveis pela comunicação da máquina com o homem. Exemplos: Monitor de vídeo, caixas de som e impressora.
## CPU
CPU é a sigla em inglês de "Central Processing unit" (Unidade Central de Processamento). É o processador do computador, o componente responsável por realizar cálculos e processar informações. A velocidade do seu computador está diretamente ligada à velocidade desse componente.
## RAM
RAM é a sigla em inglês de "Random Access Memory" (Memória de Acesso Aleatório). Ela não armazena informações de forma permanente, é apenas um espaço de trabalho temporário. Por exemplo, quando você executa um programa, as informações necessárias ficam na memória RAM, e quando o programa deixa de ser utilizado, as informações referentes a ele são apagadas. Quando o computador é desligado, se ainda existir alguma informação na RAM, esta é apagada.
## HD
HD é a sigla em inglês de "Hard Disk" (Disco Rígido). É a memória permanente do computador, onde ficam armazenados o sistema operacional, programas e todos os arquivos pessoais do usuário. Não se apaga ao desligar o computador.
### Exercícios
1. Cite outros dois exemplos de dispositivos de entrada de dados.
2. Cite outros dois exemplos de dispositivos de saída de dados.
3. Cite dois exemplos de equipamentos que podem ser considerados como computadores.
4. Conhecendo os dispositivos de entrada e saída em um computador convencional, quais são os dispositivos de entrada e saída de dados em um celular?
5. Cite três exemplos de dispositivos de armazenamento de dados de forma permanente.

View File

@ -0,0 +1,13 @@
# Conceitos
## Permissões
As permissões são usadas para definir quem pode acessar determinados arquivos ou diretórios, assim mantendo segurança e organização em seu sistema. Cada arquivo ou diretório tem três permissões: (Usuário Dono) proprietário do arquivo, (Grupo Dono) um grupo com vários usuários e (Outros) outros usuários em geral. O comando "ls -l" mostra uma listagem detalhada com todas as permissões dos arquivos e diretórios no diretório corrente, onde: r: Representa leitura. w: Representa gravação. x: Representa execução Como as permissões são divididas em três, aparece da seguinte forma: (rwx)(rwx)(rwx) Nesse exemplo, o dono, o grupo e os demais usuários tem permissão de ler, gravar e executar. É possível definir as permissões por meio de letras ou números, mas será explicado em outra lição.
### Exercícios
1. Qual a finalidade do uso de permissões?
2. Como as permissões são divididas e para quais tipos de usuários?
3. O que representam as letras "rwx"?

View File

@ -0,0 +1,41 @@
# Conceitos Básicos
## Protocolo
Protocolo é um termo muito comum na informática. Mesmo que não pareça, seu significado é simples. O protocolo estabelece um padrão de comunicação, ou seja, regras para que dois programas diferentes consigam trocar informações. É como um idioma para o ser humano. Para que duas pessoas de países diferentes consigam se comunicar, é preciso que ambas conheçam um idioma (protocolo) em comum, caso contrário não é possível compreender um ao outro. O protocolo segue o mesmo raciocínio. Abaixo serão listados os protocolos mais comuns.
## HTTP
HTTP é a sigla em inglês de "HyperText Transfer Protocol" (Protocolo de Transferência de Hipertexto). É utilizado para exibir páginas HTML, os sites. Por isso todo endereço de site começa em: http:// e logo depois vem o endereço. É o HTTP que se comunica com o servidor para exibir a página que queremos acessar.
## IP
IP é a sigla em inglês de "Internet Protocol" (Protocolo de Internet). É uma identificação única para cada computador conectado. Pode ser comparado a um documento de identidade, por exemplo. O HTTP, como foi visto acima, depende do IP, pois é preciso saber qual a identificação da sua máquina e do servidor para estabelecer a comunicação
## TCP.
TCP é a sigla em inglês de "Transmission Control Protocol" (Protocolo de Controle de Transmição). Ele é o principal protocolo para enviar e receber informações, já que é o protocolo de controle de transmição. A maioria dos outros protocolos dependem do TCP.
## SMTP
SMTP é a sigla em inglês de "Simple Mail Transfer Protocol " (Protocolo de Transferência de Correio Simples). Esse protocolo é responsável por enviar e-mails na Internet.
## POP3
POP3 é a sigla em inglês de "Post Office Protocol" (Protocolo de Correios). O 3 refere-se apenas à versão do POP. É utilizado para receber os e-mails do servidor de e-mail para seu computador.
## IRC
IRC é a sigla em inglês de "Internet Relay Chat". É um protocolo de comunicação na Internet, utilizado principalmente como bate-papo (chat).
## SSH
SSH é a sigla em inglês de "Segure Shell" (Shell Seguro). Esse protocolo fornece um canal seguro para enviar e receber informações, principalmente quando se está conectado a uma rede insegura.
### Exercícios
1. Por que o protocolo pode ser comparado a um idioma?
2. Cite outro protocolo para recebimento de e-mails.
3. Conhece algum outro protocolo que não foi mencionado acima? Qual? Para que serve?

View File

@ -0,0 +1,11 @@
# Conceitos Básicos
## Servidor
Um servidor é um computador ou um programa que oferece serviços a uma rede, que é chamada de cliente, por ser ela a solicitar os serviços. Esses serviços podem ser variados, como arquivos e e-mail, por exemplo. Essa arquitetura é conhecida como cliente-servidor. Geralmente é usada em redes de médio e grande porte, onde há várias máquinas, ou em redes onde a segurança é extremamente importante. O termo servidor é geralmente aplicado a um computador completo, mas pode ser simplesmente um programa ou parte dele que oferece serviços. O servidor pode servir a vários clientes, e um cliente pode solicitar serviços a vários servidores.
### Exercícios
1. O que é um servidor?
2. Cite três exemplos de serviços que podem ser oferecidos por um servidor.

View File

@ -0,0 +1,13 @@
# Conceitos Básicos
## Sistema Operacional
O sistema operacional é o programa (software) mais importante do computador. É através dele que conseguimos executar tarefas no computador, ou seja, é o meio de comunicação entre o usuário e a máquina. Ele organiza gerencia todos os outros programas que você instalar no computador e também gerencia os recursos físicos (hardware). Existem vários sistemas operacionais, cada um com suas próprias características, vantagens e desvantagens. Alguns exemplos: Linux, Mac OS, Windows, etc. O próprio Linux possui várias distribuições diferentes (também conhecidas como distros). Cada uma surgiu com objetivos e características específicas. Alguns exemplos são: Ubuntu, Fedora, Debian, etc.
1. O que é um sistema operacional?
2. Cite exemplos de outras distros do Linux.
3. Cite exemplos de outros sistemas operacionais.
4. Quais são os sistemas operacionais mais populares para celulares?

View File

@ -0,0 +1,19 @@
# Discos e Partições
## Formatação de Disco
Formatar um disco é útil em várias situações: Quando for necessário reinstalar o sistema operacional, ou quando for preciso utilizar outro sistema de arquivos. Para isso, será usado o programa mkfs. O mkfs torna fácil formatar drives de vários tipos no Linux, tais como pendrives, cartões de memória, HDs, SSDs, etc. O aplicativo permite várias opções e parâmetros de uso, que lhe conferem grande versatilidade para realizar a tarefa. Observação: É importante ser cuidadoso. Não é possível desfazer a formatação depois. Portanto, tenha sempre a certeza de que está formatando o drive certo.
## Como Formatar
Para formatar um pendrive, localizado em /dev/sdc1, por exemplo, deve-se primeiro desmontar o dispositivo com o comando: *sudo umount /dev/sdc1* Agora já é possível criar um sistema de arquivos nele. O comando a seguir formata e apaga todo o conteúdo do dispositivo e cria um sistema de arquivos ext3 nele: *sudo mkfs -t ext3 -l pendrive -I /dev/sdc1* Se você não especificar o sistema de arquivos a ser construído no dispositivo, o mkfs vai usar o ext2 como padrão. Os parâmetros usados tem o seguinte significado: -t: Tipo de sistema de arquivos. -n: Nome que será dado ao novo disco formatado.
Para usar o novo disco, é preciso montá-lo com o seguinte comando: mount /dev/sdc1 /mnt -t ext3
### Exercícios
1. Utilize uma unidade de armazenamento vazia, como um pendrive, por exemplo, e formate.
2. Configure o sistema de arquivos ext4.
3. Utilize a unidade formatada para armazenar conteúdo.

View File

@ -0,0 +1,15 @@
# Discos e Partições
## Identificação de Discos e Partições
No Linux, os dispositivos existentes em seu computador (como discos rígidos, pen-drives, tela, portas de impressora, modem, etc.,) são identificados por um arquivo referente a este dispositivo no diretório "/dev". A identificação é feita da seguinte forma: Diretório: Local onde são armazenados os dispositivos existentes. Sigla: Identifica o tipo de disco (sd: SATA/SCSI, hd: IDE, fd: Disquete, etc.). Letra: Identifica o disco rígido (A: 1º, B: 2º, etc.). Número: Identifica o número da partição no disco rígido. Veja alguns exemplos: /dev/fd0: Primeira unidade de disquetes. /dev/sda: Primeiro disco rígido SATA ou SCSI. /dev/sda1: Primeira partição do primeiro disco rígido SATA ou SCSI. /dev/sr0: Primeiro CD-ROM SATA ou SCSI. /dev/hda: Primeiro disco rígido IDE. /dev/hda1: Primeira partição do primeiro disco rígido IDE. Caso utilize pen-drives, memória flash, as unidades serão detectadas como sdc, sdd, e assim por diante.
### Exercícios
1. Como os discos e partições são identificados no Linux?
2. Como seria identificada a segunda partição do segundo disco rígido SATA?
3. Como seria identificado um pen-drive?
4. Como seria identificada a terceira partição do primeiro disco rígido IDE?

View File

@ -0,0 +1,15 @@
# Discos e Partições
## Introdução a Partições
Partições são divisões existentes no disco rígido que marcam onde começa e onde termina um sistema de arquivos. As partições nos permitem usar mais de um sistema operacional no mesmo computador, ou dividir o disco rígido em uma ou mais partes para ser usado por um único sistema operacional. Para gravar os dados, o disco rígido deve ser primeiro particionado, e depois a partição deve ser formatada. Após criada e formatada, a partição será automaticamente identificada como um dispositivo no diretório "/dev", e deve ser montada para permitir seu uso. Uma partição de disco não interfere em outras partições existentes. Para particionar o disco, é necessário um programa de particionamento. Os mais comuns são: "fdisk", "cfdisk", e "Disk Druid". Observação: Quando se apaga uma partição, você estará apagando TODOS os arquivos existentes nela!
### Exercícios
1. O que é uma partição?
2. Quais as finalidades de uma partição?
3. Onde as partições são identificadas no sistema?
4. Quais os programas de particionamento de disco mais comuns no Linux?

View File

@ -0,0 +1,15 @@
# Discos e Partições
## Sistema de Arquivos
Um sistema de arquivos é um conjunto de estruturas lógicas e de rotinas, que permitem ao sistema operacional controlar o acesso ao disco rígido. O sistema de arquivos é criado durante a "formatação" da partição de disco. Após a formatação, toda a estrutura para leitura/gravação/permissões de arquivos e diretórios pelo sistema operacional estará pronta para ser usada. Normalmente este passo é feito durante a instalação de sua distribuição GNU/Linux. Cada sistema de arquivos tem uma característica em particular, mas seu propósito é o mesmo: Oferecer ao sistema operacional a estrutura necessária para ler/gravar os arquivos/diretórios. Abaixo segue alguns exemplos de sistemas de arquivos existentes: Ext2: Usado em partições Linux Nativas para o armazenamento de arquivos. Ext3: Este sistema de arquivos possui melhorias em relação ao ext2, como destaque o recurso de journaling e suporte a arquivos de até 16Gb. Ele também é totalmente compatível com o ext2 em estrutura. O journal mantém um log de todas as operações no sistema de arquivos, caso aconteça uma queda de energia elétrica (ou qualquer outra anormalidade que interrompa o funcionamento do sistema), o comando "fsck" verifica o sistema de arquivos no ponto em que estava quando houve a interrupção, evitando a demora para checar todo um sistema de arquivos (que pode levar minutos em sistemas de arquivos muito grandes). FAT32: Usado no DOS e oferece suporte a discos de até 2 Terabytes. Não possui suporte a permissões e journaling. NTFS: Formato nativo de discos de sistemas operacionais Windows XP e superiores. Possui suporte a permissões de acesso e compactação nativa.
### Exercícios
1. O que é um sistema de arquivos?
2. Qual o objetivo do sistema de arquivos?
3. Quando o sistema de arquivos é criado?
4. Cite outros exemplos de sistemas de arquivos.

View File

@ -0,0 +1,16 @@
# Configurações via Arquivo de Configuração
É possível alterar e personalizar as configurações do leitor de tela a partir de um arquivo de configuração. O arquivo é: */etc/fenrir/settings/settings.conf* A sintaxe dos comandos de configuração não são complexas, e o arquivo está dividido em quatro partes:
* Sessões: Uma sessão é um grupo de configurações. Geralmente está entre colchetes, como no exemplo: [sound]. Essa seria uma sessão de configurações de som.
* Configurações: São as configurações permitidas dentro de cada sessão. Geralmente são antecedidas por uma linha de comentário, explicando a configuração, e logo depois vem uma configuração com seu valor. Exemplo: driver=genericDriver. Essa configuração define um driver de som.
* Valores: São os valores que uma determinada configuração pode assumir. O valor fica sempre depois do sinal de igualdade. Como no exemplo acima, o nome do driver de som é o valor que a configuração driver recebeu.
* Comentários: São úteis para explicitar e detalhar as configurações e valores no arquivo. Toda linha iniciada pelo símbolo "#" é um comentário, e, portanto, desconsiderada pelo sistema.
### Exercícios
1. Abra o arquivo de configurações e localize uma sessão.
2. Analise as configurações e escolha uma para alterar o valor.
3. Comente a alteração feita no arquivo.

View File

@ -0,0 +1,9 @@
# Configurações do Fenrir via Linha de Comando
O Fenrir permite que você altere configurações sem acessar diretamente o arquivo de configurações, bastando digitar a alteração no terminal. A sintaxe da configuração é a seguinte: *fenrir -o "sessão#configuração=valor"* No exemplo a seguir, o driver de som será alterado: *fenrir -o "sound#driver=gstreamerDriver* Observação: É possível escrever vários comandos seguidos, basta colocar um ponto e vírgula ";" ao fim de cada comando. No exemplo a seguir, o driver de som será alterado e o braille desabilitado: *fenrir -o "sound#driver=gstreamerDriver;braille#enabled=False"*
### Exercícios
1. Altere uma configuração única do Fenrir.
2. Altere três configurações na mesma linha.

View File

@ -0,0 +1,23 @@
# Instalação e Execução
O Fenrir é um moderno leitor de tela feito para a linha de comando. Com ele, você poderá usar seu sistema com total acessibilidade.
## Executando Sem Instalação
Esse é um ponto muito interessante. Você pode executar o leitor de tela mesmo sem instalar, para isso você deve ter permissão de administrador e usar o comando: *src/fenrir/fenrir* Assim, é possível saber se tudo está funcionando bem.
## Iniciando
Com o leitor de tela instalado, use o comando: *systemctl start fenrir* para executar o Fenrir. Você também pode querer que o Fenrir comece a falar logo que o sistema inicie. Para isso, digite: *systemctl enable fenrir*
## Sobre os Comandos
A maioria dos comandos do Fenrir são acompanhados da "Tecla Fenrir", a tecla "Insert" do seu teclado. Para conhecer mais o leitor de tela, utilize: *Tecla Fenrir + H* para entrar no modo de ajuda.
### Exercícios
1. No seu terminal, execute o leitor de tela sem instalação.
2. Habilite o leitor de tela para iniciar junto com o sistema.
3. Entre no modo de ajuda e explore os recursos do leitor de tela.

View File

@ -0,0 +1,15 @@
# Primeiros Passos
Após instalar e configurar o leitor de tela, é hora de conhecer os principais atalhos: Tecla Fenrir + Alt + Seta Acima: Aumenta o volume do sistema. Tecla Fenrir + Alt + Seta Abaixo: Diminui o volume do sistema. Tecla Fenrir + Seta Acima: Aumenta o volume da Fala. Tecla Fenrir + Seta Abaixo: Diminui o volume da fala. Tecla Fenrir + Seta Direita: Aumenta a velocidade da fala. Tecla Fenrir + Seta Esquerda: Diminui a velocidade da fala. Tecla Fenrir + Alt + Seta Direita: Aumenta o tom da fala. Tecla Fenrir + Alt + Seta Esquerda: Diminui o tom da fala. Tecla Fenrir + F3: Alterna entre som e mudo. Tecla Fenrir + F4: Alterna o modo de fala. Tecla Fenrir + Enter: Desabilita a fala temporariamente. Tecla Fenrir + Q: Sai do Fenrir. Tecla Fenrir + T: Fala a hora. Tecla Fenrir + T (duas vezes): Fala a data. Tecla Fenrir + C: Copia o texto selecionado para a área de transferência. Tecla Fenrir + V: Cola o texto da área de transferência. Para mais comandos, pressione a combinação Tecla Fenrir + H, assim você entra no modo de ajuda.
### Exercícios
1. Altere o volume do sistema.
2. Altere o volume da voz.
3. Altere a velocidade de leitura.
4. Selecione e copie um texto para a área de transferência. Em seguida, cole o conteúdo.
5. Verifique a hora e data atual.

View File

@ -0,0 +1,21 @@
# Trabalhando Com Arquivos E Diretórios
## Criando um diretório
Para criar um diretório, usa-se o comando: *mkdir* seguido do nome do diretório
Exemplo: *mkdir Documentos*
O diretório Documentos será criado no diretório atual.
Para conferir o resultado, basta digitar o comando: *ls* sem parâmetros, para exibir o conteúdo do diretório.
### Exercícios
1. Com base no exemplo acima, crie novos diretórios no diretório atual.
2. Exiba o conteúdo do diretório corrente e verifique se seus diretórios foram criados.
3. Exiba as informações detalhadas dos diretórios criados.
4. Acesse cada diretório criado e volte para o diretório anterior.

View File

@ -0,0 +1,23 @@
# Trabalhando com Diretórios e Arquivos
## Criando e Escrevendo em Arquivos
Agora vamos criar um arquivo. É possível criar um arquivo vazio usando o comando "touch". Exemplo: *touch "Bem Vindo.txt"* Observação: Para criar arquivos com mais de uma palavra, digite o nome entre " (aspas).
Também podemos criar um arquivo e escrever um texto nele simultaneamente. Primeiramente vamos escolher um texto de exemplo que irá dentro desse arquivo. Para que o terminal imprima a mensagem "Bem vindo" podemos utilizar o comando echo, que irá imprimir esses dois argumentos ("Bem" e "vindo"): *echo Bem vindo* O resultado será a mensagem impressa no terminal. Enquanto digitamos comandos no terminal, uma espécie de histórico está sendo criada, se clicarmos no botão de seta para cima, voltamos ao comando anterior que foi executado. Usamos esse atalho para navegarmos pelos comandos, clicando mais vezes a seta pra cima, chegaremos a comandos digitados a mais tempo, a seta para baixo também funciona para voltar para os comandos mais atuais no histórico. Se quiser limpar o histórico de comandos, basta usar o comando: *clear* Mas antes disso, vamos usá-lo para voltar ao echo e passarmos apenas um argumento, colocando aspas duplas na mensagem que queremos imprimir: *echo "Bem vindo"* Mas o que queremos é executar esse comando redirecionando sua saída para um arquivo, para isso, utilizamos o caractere > (maior) depois da mensagem seguido pelo nome do arquivo que queremos salvar a mensagem: *echo "Bem vindo" > "Bem Vindo.txt"* O terminal já não imprime mais a mensagem, ela foi redirecionada para o arquivo, veja que se buscarmos novamente a lista de arquivos e diretórios usando o ls, teremos nosso arquivo Bem Vindo.txt listado. Observação 1: Cuidado com o parâmetro > (maior), pois este só adiciona conteúdo novo ao arquivo. Se for utilizado em um arquivo já escrito, o conteúdo anterior será apagado e substituído pelo atual. Para escrever mais conteúdo em um arquivo já escrito, utilize dois sinais de maior em vez de um. Exemplo: *echo "ao curso" >> "bem vindo.txt"* Agora o conteúdo contido no arquivo será: **Bem vindo ao curso** Veremos com detalhes na lição seguinte como ler arquivos inteiros ou trechos específicos deles. Observação 2: Ao redirecionar uma mensagem para um arquivo com o comando "echo", se este não existir, será criado no momento da execução do comando.
### Exercícios
1. Troque de diretório.
2. Crie um arquivo vazio.
3. Liste o conteúdo do diretório e verifique se o arquivo foi criado.
4. Exiba uma mensagem no terminal.
5. Volte no histórico de comandos digitados e redirecione a mensagem digitada para o arquivo criado anteriormente.
6. Escreva outras mensagens no arquivo. Cuidado para não sobrescrever o conteúdo anterior.
7. Limpe o histórico do terminal.

View File

@ -0,0 +1,35 @@
# Trabalhando Com Diretórios E Arquivos
## Exibindo Conteúdo de Arquivos
Para ler o conteúdo de arquivos no Terminal, usamos o comando: *cat* Exemplo: *cat "Bem Vindo.txt"* A saída do comando cat será o texto presente dentro do arquivo "Bem Vindo.txt". Você também pode exibir o conteúdo com numeração de linhas, para isso utilize o parâmetro: -n Exemplo: *cat -n "Bem Vindo.txt"*
Observação: Para todos os comandos envolvendo arquivos ou diretórios, existe a possibilidade de escrevermos apenas uma parte do nome deles e buscar um específico utilizando a tecla "TAB". Se houver apenas um arquivo com o início do nome digitado, o terminal o preenche automaticamente ao apertarmos a tecla.
## Criando e editando com Cat
O comando "cat" tem outras funcionalidades bastante interessantes. Com ele, é possível criar um arquivo e inserir dados com o parâmetro: > (maior). Digite o seguinte comando: *cat > teste* Em seguida tecle "enter". O arquivo teste foi criado, e agora você pode inserir dados nele. Exemplo: *Este é um arquivo de teste.* Quando terminar de digitar, pressione o atalho "CTRL + D". O arquivo será salvo e a tela de edição será fechada. Confira o resultado digitando: *cat teste* A saída será: **Este é um arquivo de teste.**
## Concatenação
Também é possível utilizar o comando "cat" para concatenar conteúdo de arquivos. Vamos juntar o conteúdo do arquivo "Bem Vindo.txt" com o conteúdo do arquivo "teste" copiando para um novo arquivo. Digite: cat "Bem Vindo.txt" teste > arquivo_concatenado Agora verifique o conteúdo do arquivo "arquivo_concatenado". **Bem Vindo Este é um arquivo de teste.**
## Exibindo início e fim de arquivos
Existem dois comandos que permitem exibir o início e o fim de um arquivo, são eles "head" e "tail". O "head" exibe as primeiras linhas de um arquivo. Por padrão, ele exibe as 10 primeiras, mas é possível aumentar ou diminuir esse valor com o parâmetro: -n seguido do número de linhas que deseja exibir. Exemplo: *head -n 1 arquivo_concatenado* Ele exibirá apenas a primeira linha do arquivo.
O "tail" exibe o fim do arquivo e funciona como o "head". Possui o mesmo valor padrão de linhas exibidas e o mesmo parâmetro para mudar a exibição. Exemplo: *tail -n 1 arquivo_concatenado* Ele exibirá apenas a última linha do arquivo.
### Exercícios
1. Verifique os arquivos existentes no diretório corrente.
2. Exiba o conteúdo dos arquivos existentes.
3. Crie um novo arquivo e insira dados nele.
4. Copie os dados de vários arquivos para um arquivo novo.
5. Leia o arquivo e numere as linhas.
6. Exiba: a) As duas primeiras linhas do arquivo criado. b) As três últimas linhas do arquivo criado.

View File

@ -0,0 +1,29 @@
# Trabalhando Com Diretórios E Arquivos
## Copiando, Movendo, Renomeando e Removendo
Para copiar um arquivo, usamos o comando: *cp* Vamos copiar o arquivo teste para o diretório Documentos: *cp teste Documentos* Verifique com o comando "ls" e veja o resultado: *ls Documentos* Também é possível copiar o conteúdo de um arquivo para outro, utilizando o comando da mesma maneira. *cp teste teste2* O conteúdo de teste foi copiado para teste2. Para verificar, basta ler o conteúdo de ambos com o comando "cat".
Para copiar um diretório para outro, basta usar o parâmetro "-r". Criaremos o diretório Documentos2 e copiaremos Documentos para dentro dele. Exemplo: *mkdir Documentos2* *cp -r Documentos Documentos2* O diretório Documentos foi copiado para Documentos2. Liste o conteúdo e verifique o resultado.
Para mover um arquivo, utilizamos o comando "mv". Exemplo: *mv teste Documentos* O arquivo foi movido para o diretório Documentos. Verifique com o comando "ls". Para renomear um arquivo ou diretório, basta digitar primeiro o nome original e depois o novo nome. Exemplo: *mv teste teste2* O arquivo teste agora chama-se teste2. Para mover um diretório, basta fazer exatamente como foi feito com arquivos. O comando "mv" já é recursivo, o que dispensa o parâmetro "-r".
Para remover um arquivo, usamos o comando "rm". Exemplo: *rm teste* O arquivo teste foi removido. Para remover um diretório vazio, usamos o comando "mrdir". Exemplo: *rmdir Documentos* Como temos arquivos nesse diretório, ele não foi removido. Portanto, para diretórios contendo conteúdo, usamos o comando "rm -r". Exemplo: *rm -r Documentos* Agora o diretório foi removido com todo o seu conteúdo. Não se esqueça de conferir o resultado de cada alteração com os comandos "ls" e "cat".
### Exercícios
1. Crie um arquivo, escreva um conteúdo e copie para outro diretório.
2. Copie o conteúdo desse arquivo para outro arquivo.
3. Copie um diretório para outro.
4. Mova seus arquivos para outro diretório.
5. Renomeie o arquivo de teste.
6. Mova um diretório para outro.
7. Apague o arquivo de teste.
8. Apague o diretório criado para teste.

View File

@ -0,0 +1,35 @@
# Trabalhando Com Diretórios E Arquivos
## Trocando de Diretório
Agora que já foi mostrado o conteúdo de diretórios, é hora de saber como navegar de um diretório para o outro.
O comando usado para trocar de diretório é o: *cd*
Existem vários parâmetros para combinarmos ao comando e trocar de diretórios. Eles serão listados a seguir:
/ Este parâmetro navega até o diretório / mais conhecido por Diretório Raiz ou "Root". Todos os demais diretórios são criados dentro do diretório raiz. Exemplo: *cd /* Se listar o conteúdo do diretório, perceberá que foi alterado.
~ Este parâmetro aponta diretamente para o diretório "Home" do usuário (ou pasta do usuário). Exemplo: *cd ~*
- Este parâmetro navega até o último diretório em que esteve. Considerando que os comandos anteriores foram executados, se esteve no diretório raiz e em seguida foi para o diretório de usuário, usando o comando a seguir, voltará para o diretório raiz, que é o último visitado antes do diretório atual. Exemplo: *cd -*
Para navegar até um diretório dentro do atual, basta digitar cd seguido do nome do diretório. No exemplo a seguir, utilizarei o diretório Documentos dentro da minha pasta "Home". Exemplo: *cd Documentos* Alternativamente, é possível digitar o caminho completo do diretório. Exemplo: *cd /home/roberta/Documentos*
.. Este parâmetro volta ao diretório anterior na hierarquia. Considerando que estejamos no diretório Documentos, de acordo com o exemplo anterior, usando esse parâmetro é possível voltar para o diretório "home". Exemplo: *cd ..*
Observação: Quando trocar de diretório, utilize o comando: *ls* para verificar o conteúdo do diretório e certificar-se de que navegou ao diretório correto.
### Exercícios
1. Navegue ao diretório raiz.
2. Liste o conteúdo do diretório e entre em algum de sua escolha.
3. Volte ao diretório anterior.
4. Navegue até o diretório home.
5. Navegue ao último diretório visitado.
6. Navegue a outro diretório utilizando o caminho completo do mesmo.

View File

@ -0,0 +1,21 @@
# Trabalhando Com Diretórios E Arquivos
## Uso do Diff
O comando "diff" compara o conteúdo de dois arquivos ou diretórios e exibe a diferença entre eles, e isso inclui arquivos compactados com gzip. Os parâmetros aceitos no comando são: -i: Ignora diferenças entre maiúsculas e minúsculas. -E: Ignora diferenças de tabulação. -b: Ignora diferenças de quantidade de espaços em branco. -w: Ignora qualquer espaço em branco. -B: Ignora linhas em branco. -a: Compara os arquivos como arquivos de texto, mesmo que não sejam. -q: Mostra apenas se o conteúdo é igual ou diferente. -y: Mostra os arquivos em colunas, exibindo as diferenças. -t: Converte tabulações em espaços. -r: Compara recursivamente o conteúdo de diretórios.
O comando reporta, basicamente, o que é preciso alterar no arquivo que vem primeiro, para que fique igual ao último.
Para comparar dois arquivos, digite: *diff arquivo1 arquivo2* Se os arquivos forem diferentes, vai aparecer o número da linha onde isso ocorre, seguido de uma letra: a: Indica que uma informação deve ser adicionada. c: Indica que uma informação deve ser substituída. d: Indica que uma informação deve ser deletada.
> : Indica que a informação depois dele deve ser incluída. <: Indica que a informação depois dele deve ser excluída. -: Separa informações.
Para comparar arquivos compactados, digite: *zdiff arquivo1.gz arquivo2.gz*
### Exercícios
1. Compare dois arquivos e exiba a saída em colunas.
2. Compare dois arquivos ignorando diferença de maiúsculas e minúsculas.
3. Compare dois arquivos compactados ignorando diferenças entre maiúscula e minúscula, espaços e linhas em branco e exiba o resultado em colunas.

View File

@ -0,0 +1,39 @@
# Trabalhando Com Diretórios E Arquivos
## Utilização do Find
O comando "find" é utilizado para pesquisar arquivos e diretórios no sistema sob vários critérios.
## Pesquisando Arquivos e Diretórios Pelo Nome
Para pesquisar um arquivo pelo nome no diretório atual, digite: *find . -name Nome-ARQUIVO.txt* Observação: Esse comando diferencia maiúsculas de minúsculas. Para ignorá-las, basta utilizar a letra "i" antes do parâmetro "name", da seguinte forma: *find . -iname Nome-ARQUIVO.txt*
Para pesquisar um arquivo pelo nome em um diretório específico, digite: *find diretorio -iname nome-arquivo.txt*
Para pesquisar um diretório pelo nome, digite: *find / -type d -name NOME-do-Diretório*
## Pesquisando Arquivos Por Extensão
Para pesquisar arquivos pela sua extensão (txt, por exemplo), digite: *find / -type f -name “*.txt”*
## Pesquisando Arquivos Por Tamanho
Para pesquisar arquivos por tamanho (maiores que 500 MB, por exemplo), digite: *find diretorio -size +500M* Observação: Se quiser o tamanho em GB, basta substituir o "M" por "G". O sinal de mais pesquisa por tamanhos maiores e o sinal de menos por tamanhos menores.
## Pesquisando Arquivos Com Modificações
Para pesquisar arquivos modificados recentemente (nos últimos 5 dias, por exemplo), digite: *find /home/ -mtime -5*
### Exercícios
1. Pesquise arquivos pelo nome no diretório atual.
2. Pesquise arquivos pelo nome em outros diretórios ignorando letras maiúsculas.
3. Pesquise diretórios pelo nome ignorando letras maiúsculas.
4. Pesquise arquivos com a extensão "pdf".
5. Pesquise arquivos de tamanho superior a 1 GB.
6. Pesquise arquivos que foram modificados no último dia.

View File

@ -0,0 +1,25 @@
# Arquivos e Diretórios
## Utilização do Grep
O comando "grep" é utilizado para buscar palavras específicas no nome de um arquivo ou em seu conteúdo.
## Pesquisando em Nomes de Arquivos
Para encontrar arquivos que tenham determinada palavra (teste, por exemplo), digite: *ls | grep teste* Observação: O "ls" é usado para listar os arquivos que tem a palavra correspondente.
Para pesquisar arquivos com extensão, digite: *ls | -E grep teste.txt* Observação: O parâmetro "E" é usado para que o "grep" aceite pontos e alguns outros caracteres.
## Pesquisando no Conteúdo dos Arquivos
Para pesquisar uma palavra ou frase contidas em um arquivo, digite: *grep oi teste.txt* O comando retorna todas as linhas do arquivo "teste.txt" que contenham "oi". Observação: Para definir uma frase, coloque entre aspas, caso contrário o "grep" considera que a segunda palavra já faz parte do nome do arquivo. Por exemplo: *grep "bom dia" teste.txt* O comando retornará todas as linhas que contenham a frase "bom dia".
### Exercícios
1. Pesquise palavras em nomes de arquivos.
2. Pesquise palavras em nomes de arquivos com extensão.
3. Pesquise palavras dentro de arquivos.
4. Pesquise frases dentro de arquivos.

View File

@ -0,0 +1,25 @@
# Trabalhando Com Diretórios E Arquivos
## Uso do Touch
O comando "touch é usado para alterar a data e hora de acesso e de modificação de arquivos. É possível alterar as duas simultaneamente ou apenas uma delas. Antes de prosseguir, veja a legenda abaixo: A: Representa os dígitos do ano. M: Representa os dígitos do mês. D: Representa os dígitos do dia. H: Representa os dígitos da hora. M: Representa os dígitos do minuto. S: Representa os dígitos do segundo.
## Alterando a Data e hora de Acesso
Para alterar a data e hora de acesso de um arquivo, digite o seguinte comando: *touch -t AAAAMMDDhhmm.ss -a arquivo* O parâmetro "-a" indica acesso.
## Alterando a Data e Hora de Modificação
Para alterar a data e hora de modificação de um arquivo, digite o seguinte comando: *touch -t AAAAMMDDhhmm.ss -m arquivo* O parâmetro "-m" indica modificação.
## Alterando a data e hora de acesso e modificação
Para alterar data e hora de acesso e modificação de um arquivo simultaneamente, digite o seguinte comando: *touch -t AAAAMMDDhhmm.ss arquivo* Observação: Se o arquivo não existir, ele será criado com a data e hora definidas no comando.
### Exercícios
1. Altere a data e hora de acesso de um arquivo para 25/03/2009 06:25:44.
2. Altere a data e hora de modificação de um arquivo para o dia anterior ao meio-dia.
3. Altere a data e hora de acesso e modificação de um arquivo.

View File

@ -0,0 +1,48 @@
# Trabalhando Com Diretórios E Arquivos
## Verificando o Diretório Atual e Seu Conteúdo
Para iniciar as atividades, é fundamental conhecer o terminal e seu conteúdo.
Ao abrir o terminal, estamos em algum diretório do sistema. Para descobrir o diretório, basta digitar o comando: *pwd*
A saída será algo parecido com: **/home/roberta**
O nome depois de /home varia, de acordo com o usuário logado no sistema.
Para exibir a lista de diretórios e arquivos existentes dentro do diretório atual, basta utilizar o comando: *ls*
Exemplo: *ls*
Será exibido na tela algo como: **Documentos** **Teste.txt**
Note que há um diretório criado, o diretório Documentos. Também há o arquivo Teste.txt. Posteriormente será ensinado como criar diretórios e arquivos.
O comando ls possui alguns outros parâmetros importantes, que serão listados abaixo:
-l Exibe informações dos arquivos e diretórios, como tamanho, dono, grupo, data, etc. Se for diretório, as informações começarão com a letra 'd'. Exemplo: *ls -l* Todas as informações dos seus arquivos e diretórios serão exibidas.
-a Lista arquivos e diretórios ocultos. Exemplo: *ls -a* Todos os arquivos e diretórios ocultos serão exibidos. Observação: Nomes de diretórios e arquivos ocultos começam com um . (ponto).
Os parâmetros também podem ser combinados, veja o exemplo: *ls -la* Este comando exibe as informações de todo o conteúdo, inclusive do conteúdo oculto.
Existe um atalho equivalente ao comando acima: *ll* Exibirá exatamente o mesmo conteúdo do comando anterior.
* Exibe o conteúdo do diretório corrente e, caso exista diretórios dentro deste, exibe também o conteúdo deles. Exemplo: *ls * *
Existe também outro comando bem útil, que permite saber o tipo de cada arquivo. Exemplo: *file teste.txt* A saída será algo parecido com: **Teste.txt: ASCII Text** Serve também para diretórios, veja o exemplo: *file Documentos* A saída será parecida com: **Documentos: Directory**
Observação: No terminal, há diferença entre maiúsculas e minúsculas. Portanto, preste atenção ao digitar comandos, nomes de diretórios e arquivos.
### Exercícios
1. Descubra qual o diretório atual em que se encontra.
2. Exiba o conteúdo do diretório corrente.
3. Exiba informações dos arquivos e diretórios.
4. Exiba o conteúdo oculto dentro do diretório corrente.
5. Exiba informações de todos os arquivos e diretórios, incluindo os ocultos. Em seguida, faça o mesmo utilizando o atalho.
6. Verifique o tipo de cada conteúdo, inclusive diretórios.

View File

@ -0,0 +1,17 @@
# Git
## Clone e Adição de Arquivos
Com o Git configurado e uma conta criada no GitHub, é hora de começar a trabalhar em um projeto. Para isso, é necessário clonar o repositório criado previamente no GitHub em seu computador.
Abra o terminal e navegue até uma pasta que queira utilizar para essa finalidade. Execute o seguinte comando: *git clone https://github.com/usuario/repositorio.git* Onde: usuario: É o nome do seu usuário no GitHub. repositorio: É o nome que você digitou na criação do repositório.
Uma pasta com o nome do seu repositório será criada. Navegue até ela para começar a interagir com o repositório. Como exemplo, crie um arquivo de texto nessa pasta e digite algo. Salve e feche o arquivo. Agora, execute o seguinte comando: *git status* Esse comando mostra o status do seu trabalho, como por exemplo os arquivos, modificações e se estão prontos para serem publicados. Nesse caso, o seu arquivo de texto não está pronto para ser enviado ao GitHub. Para isso ainda falta um comando: *git add .* Ao contrário do que parece, esse comando não está adicionando um arquivo novo no repositório, e sim preparando os arquivos para serem enviados ao GitHub. Você também pode definir apenas arquivos específicos digitando seus nomes, se não quiser enviar todos eles.
### Exercícios
1. Abra o terminal, navegue até uma pasta nova de trabalho e clone seu repositório criado anteriormente no GitHub.
2. Vá até a pasta criada e crie arquivos nela.
3. Adicione os arquivos, preparando-os para serem enviados para o GitHub.

View File

@ -0,0 +1,25 @@
# Git
## Commit, Pull e Push
Agora que arquivos já foram adicionados e preparados para envio, será demonstrado como enviar esses arquivos para o GitHub.
## Commit
Um commit serve para documentar as alterações feitas naquele projeto. Com os arquivos já preparados com o comando "git add .", é hora de fazer o primeiro commit: *git commit -m "Escreva as alterações realizadas aqui". Pronto, suas alterações já estão documentadas, prontas para serem publicadas.
## Pull
O pull serve para atualizar o repositório na sua máquina. Se alguém já alterou o projeto antes de você, é necessário obter essas modificações antes de enviar as suas, para manter o repositório sempre atualizado. Para isso, basta digitar: *git pull*
## Push
Você modificou os arquivos, commitou descrevendo o que fez exatamente naquela modificação e agora precisa enviar tudo isso para o servidor. O push empurra as suas modificações para o servidor, incluindo-as no histórico do projeto. Execute: *git push -u origin master* Pronto, suas alterações foram enviadas para o repositório no GitHub.
### Exercícios
1. Faça seu primeiro commit e adicione um comentário.
2. Faça um pull do projeto.
3. Envie as alterações para o GitHub.

View File

@ -0,0 +1,21 @@
# Git
## Configuração do Git
Com o Git em seu sistema, basta configurá-lo para ter acesso à sua conta e repositórios no GitHub. Você só precisa fazer uma vez. As configurações serão mantidas entre atualizações. Você também poderá alterá-las a qualquer momento executando os comandos novamente.
O Git vem com uma ferramenta chamada git config que permite a você ler e definir variáveis de configuração que controlam todos os aspectos de como o Git opera. Abra o terminal e digite os comandos a seguir: *git config --global user.name "Seu Nome"* *git config --global user.email "Seu e-mail"* Estas configurações ficam alocadas no arquivo "~/.gitconfig", onde o ~ é o seu diretório home. Quando precisar definir um nome e e-mail específicos para um projeto, basta repetir os comandos sem o parâmetro "--global".
## Configuração do Repositório
Para enviar e receber as alterações corretamente, é necessário configurar o repositório no computador. O primeiro passo é transformar uma pasta em um repositório. Crie uma nova pasta e execute o comando: *git init* Um repositório vazio será iniciado.
## Adicionando o Endereço do Repositório
Agora, o endereço do repositório criado anteriormente no GitHub será configurado no terminal. Execute o comando: *git remote add origin https://github.com/usuario/repositorio.git* A expressão "origin" será usada toda vez que for enviar alterações para esse repositório. Você pode atribuir outro nome, basta não se esquecer dele na hora de publicar novidades no GitHub. Para ver a lista de todos os repositórios adicionados, digite: *git remote*
### Exercícios
1. Abra o terminal e configure o Git para um único projeto.
2. Configure o Git de forma global, para todos os projetos que for criar.

View File

@ -0,0 +1,23 @@
# Git
## Introdução ao Git e GitHub
## O Que é Git?
O Git é um sistema de controle de versão de arquivos. Através dele, podemos desenvolver projetos na qual diversas pessoas podem contribuir simultaneamente no mesmo, editando e criando novos arquivos e permitindo que os mesmos possam existir sem o risco de suas alterações serem sobrescritas. Se não houver um sistema de versão, imagine o caos entre duas pessoas abrindo o mesmo arquivo ao mesmo tempo. Uma das aplicações do git é justamente essa, permitir que um arquivo possa ser editado ao mesmo tempo por pessoas diferentes. Basta instalar o Git utilizando o terminal.
## O que é github?
O GitHub é um serviço web que pode ser usado gratuitamente e oferece diversas funcionalidades extras aplicadas ao git. Resumindo, você poderá usar gratuitamente o github para hospedar seus projetos pessoais online. Para isso, basta criar uma conta no site e configurar suas informações de usuário e senha no Git via terminal. O github não possui instalação, ele é um serviço, e caso você não tenha uma conta, chegou a hora de criá-la no seguinte endereço: [Link para o GitHub](https://github.com/) Após criar a conta, basta navegar pela página e criar um novo repositório. Quando o repositório é criado, existe um arquivo chamado "readme.md" que vai conter a descrição do seu novo projeto. Após a criação, o repositório estará disponível em um link composto da seguinte maneira: *https://github.com/usuario/repositorio* Onde: usuario: É seu nome de usuário do GitHub. repositorio: É o nome que você deu ao novo repositório.
### Exercícios
1. O que é Git?
2. O que é GitHub?
3. Qual a função do arquivo "Readme.md"?
4. Acesse o site do GitHub e crie uma conta.
5. Crie um repositório no GitHub.

View File

@ -0,0 +1,17 @@
# Utilizando o Cliente IRC Irssi
## Comunicação no Irssi
Agora que já conhecemos o básico do Irssi, vamos demonstrar como conversar com outras pessoas. Um servidor IRC é composto de diversos canais dos mais variados temas. Primeiramente, vamos nos conectar de novo ao servidor. *irssi -c irc.freenode.net -n Roberta* Agora que estamos conectados, que tal verificar a lista dos canais disponíveis? Para isso, execute o comando: */list channel* Os canais disponíveis serão exibidos. Se quiser entrar em um desses canais, por exemplo, o canal "RPG", execute: */j rpg* Logo estará conectado, algumas informações do canal serão exibidas. Para conversar com todos os usuários de um canal, basta digitar normalmente e teclar "Enter" para enviar a mensagem. Para mandar uma mensagem privada para alguém, João, por exemplo, digite: */msg João Olá.* Assim, você envia uma mensagem privada para o usuário João. Se quiser trocar de canal novamente, basta executar o comando citado acima.
### Exercícios
1. Conecte-se a um servidor IRC de sua preferência.
2. Liste os canais desse servidor.
3. Escolha um canal e entre.
4. Converse com os usuários, envie também mensagens privadas.
5. Desconecte-se do servidor e feche o cliente.

View File

@ -0,0 +1,21 @@
# Utilizando o Cliente IRC Irssi
## Abrindo e Fechando Conexão Com um Servidor
Nessa lição, será ensinado como utilizar o cliente Irssi para se comunicar utilizando o protocolo IRC. Primeiramente, o IRC é um protocolo de comunicação usado principalmente em bate-papo. Para utilizá-lo, precisamos de um cliente para conectar a um servidor IRC, e será utilizado o Irssi. Para instalar o Irssi, digite: *sudo apt-get install irssi*
Depois de instalado, vamos nos conectar a um servidor. Neste exemplo, usaremos o "FreeNode", um servidor bastante popular e com canais variados. Antes disso, no entanto, mostrarei alguns parâmetros que podem ser usados na conexão: *-c* Esse parâmetro serve para indicar o endereço do servidor. *-n* Esse parâmetro indica seu apelido. *-p* Esse parâmetro indica a porta do servidor. De modo geral, não é necessário utilizá-lo. Agora sim, vamos realizar a conexão. Veja o exemplo: *irssi -c irc.freenode.net -n Roberta* Estamos nos conectando ao endereço "irc.freenode.net" com o nick "Roberta". Se quiser, pode primeiro abrir o Irssi, digitando o comando: *irssi* e depois se conectando ao servidor, digitando: */server irc.freenode.net*
Para encerrar uma conexão, digite: */disconnect* Para fechar o Irssi, digite: */exit* Para sair do servidor e fechá-lo ao mesmo tempo, também pode usar o comando: */quit* Nesta aula, demonstramos como abrir e fechar conexão com um servidor IRC.
### Exercícios
1. Instale o Irssi no seu computador.
2. Execute o programa e se conecte a um servidor.
3. Desconecte e feche o Irssi.
4. Se conecte novamente, agora usando os parâmetros do Irssi.
5. Desconecte e feche o programa com um único comando.

View File

@ -0,0 +1,19 @@
# Introdução ao Markdown
## Convertendo Textos
Depois de aprender alguns símbolos que permitem formatar textos com o Markdown, agora será mostrado como converter esses textos para outros formatos. Para converter, utilizaremos um programa chamado Pandoc. Este programa aceita vários formatos, tanto de entrada (arquivo original que deseja converter), quanto de saída (arquivo que será gerado a partir do arquivo original). Abaixo serão listados os principais formatos suportados: Formatos de entrada: Markdown, TXT, HTML, EPUB, DOC e DOCX (formato de arquivos do Word a partir da versão 2007). Formatos de saída: Markdown, TXT, HTML, RTF, EPUB, DOC e DOCX.
## Convertendo o Arquivo
Vamos converter o arquivo já criado para outros formatos. Para isso, abra o terminal, mude para o diretório onde está o arquivo e digite o seguinte comando: *pandoc -o Testando Markdown.doc Testando Markdown.txt* Esse comando está escrito da seguinte forma: Primeiro vem o nome do programa, o Pandoc. Em seguida, vem o parâmetro "-o", que representa o arquivo de saída (output em inglês). Depois do parâmetro vem o nome e o formato do arquivo a ser gerado, e em seguida, o nome e extenção do arquivo original. "Pandoc, o arquivo de saída (representado pelo parâmetro -o) será Testando Markdown.doc, e o arquivo a ser convertido é Testando Markdown.txt". Esse é o comando para converter qualquer formato que desejar. Observação: Os arquivos formatados com Markdown geralmente possuem a extenção (.md), mas também podem ser escritos em arquivos de texto simples (.txt).
### Exercícios
1. Abra o terminal, vá até o diretório onde salvou o arquivo das aulas anteriores e o converta para o próprio formato do markdown.
2. Converta o mesmo arquivo para formatos do Word (DOC e DOCX).
3. Tente fazer o inverso, converta os arquivos gerados novamente para Markdown (experimente mudar o nome do arquivo a ser gerado para não perder o original).
4. Converta para outros formatos disponíveis e veja o resultado.

View File

@ -0,0 +1,29 @@
# Introdução ao Markdown
## Ênfase de Textos
Em certos momentos, destacar uma determinada frase ou palavra no texto é conveniente, principalmente para reforçar o sentido daquele trecho. Para isso, existem duas formas: Itálico e negrito. A principal diferença entre eles é que o itálico deixa as letras mais deitadas, enquanto o negrito deixa mais forte a cor das letras destacadas.
## Escrevendo em Itálico
Para escrever uma palavra ou frase em itálico, basta colocar um "*" (asterisco) no começo e outro no fim da mesma. Exemplo: *Esta frase está em itálico.*
## Escrevendo em Negrito
O negrito é muito semelhante. Mas em vez de um, são dois asteriscos no início e dois no fim. Exemplo: **Esta frase está em negrito.**
## Itálico e Negrito
Também é possível deixar um texto em itálico e negrito simultaneamente. Para isso, basta utilizar três asteriscos no início e no fim do texto. Exemplo: ***Esse texto está em itálico e negrito.***
### Exercícios
1. Abra o mesmo arquivo de testes em markdown para editá-lo.
2. Escreva palavras e frases em itálico.
3. Escreva palavras e frases em negrito.
4. Formate textos com itálico e negrito simultaneamente.
5. Salve e feche o arquivo.

View File

@ -0,0 +1,25 @@
# Introdução ao Markdown
O Markdown é uma simples linguagem de marcação. Com poucos e simples caracteres, é possível formatar seu texto em um simples editor, adicionar títulos, subtítulos, links, listas, etc., e depois converter para vários outros formatos. Para converter esses textos, utilizaremos o programa Pandoc, que permite conversões entre vários formatos diferentes.
Começaremos com simples exemplos de formatação com Markdown. Depois, será ensinado como realizar a conversão.
## Parágrafos
Um parágrafo é uma linha de texto comum, não exige nenhum caractere especial. Basta dar alguns espaços antes de começar a escrever na linha para indicar que é um parágrafo.
## Títulos e Subtítulos
Os títulos são marcados com um "#" (cardinal ou jogo-da-velha) no início da sua linha. Os títulos vão do nível 1 a 6. O título de nível 1 é o que possui letras maiores, e quanto maior o nível, menor o título. Ou seja, os demais podem ser considerados subtítulos. Ou, supondo que tenhamos um título de nível 3 e outro de nível 4, o de nível 4 é um subtítulo em relação ao de nível 3. O nível do título é definido pela quantidade de "#" antes dele. Ou seja, se tivermos: *# Este Exemplo* é de nível 1, *## O Segundo Exemplo* é de nível 2, e assim sucessivamente.
Antes de avançarmos, vale uma observação importante apartir de agora. Como já foi possível notar, o Markdown usa caracteres bastante comuns para formatar o texto. E se você quiser usar algum deles, como um "#", mas sem querer indicar um título? Para isso, usamos o caractere "\" (barra invertida) antes do caractere que deseja usar. Assim, ele assume o sentido literal e não é interpretado pelo Markdown. Se quiser usar a própria barra invertida, basta digitá-la duas vezes.
### Exercícios
1. Abra seu editor de textos favorito, crie um arquivo chamado "Testando Markdown.txt", por exemplo, e comece a escrever um texto com os primeiros caracteres de formatação ensinados.
2. Escreva títulos e subtítulos.
3. Escreva o símbolo "#" antes de algum texto, mas faça com que não seja interpretado como caractere de formatação.
4. Salve o arquivo criado.

View File

@ -0,0 +1,29 @@
# Introdução ao Markdown
## Incerindo Links e Imagens
Ao escrever um texto, você pode precisar incerir um link de algum site ou imagem disponível na Internet. O Markdown também possui caracteres especiais para esses casos. Quanto aos links, existem os internos, que referenciam para outros trechos do próprio documento, e os externos, que referenciam para outros sites.
## Links Internos
Para referenciar um trecho do próprio documento, como um link que leve de volta ao início do texto, por exemplo, faça o seguinte. Primeiro, escreva o texto que vai referenciar o link de referência. Logo em seguida, coloque o nome do link entre colchetes. Na linha seguinte, escreva novamente o nome que deu ao link entre colchetes e, logo depois, coloque o símbolo de "#" e o identificador do trecho onde deseja referenciar. Exemplo: Voltar ao [Início](#inicio).
## Links Externos
Para incerir o link de um site e algum texto que o descreva, siga os seguintes passos: Primeiro, coloque o texto descritivo do link entre colchetes. Logo em seguida, na mesma linha, o endereço do link deve estar entre parênteses. Exemplo: *[F123](http://f123.org)*
## Imagens
Incerir imagens é bem semelhante, a única diferença é que deve ser incerido um ponto de exclamação "!" antes de abrir o colchete. *![Foto de um computador pequeno](http://f123.org/wp-content/uploads/2017/07/F123-Talking-Computer-2.jpg)*
### Exercícios
1. Abra o arquivo "Testando Markdown.txt" e vá para o fim do mesmo.
2. Incira uma referência para outro trecho do documento.
3. Incira um link de algum site de sua preferência e coloque um texto descritivo.
4. Faça o mesmo com uma imagem.
5. Salve e feche o arquivo.

View File

@ -0,0 +1,44 @@
# Introdução ao Markdown
## Listas
As listas são bastante convenientes. Listar tópicos, enumerar uma sequência determinada de instruções, tudo isso é possível com listas. Existem dois tipos de listas: Listas com Marcadores (ou simplesmente listas não ordenadas) e listas ordenadas. Vamos diferenciar ambas e descobrir como fazer?
## Listas Não Ordenadas
Essas listas são bastante convenientes quando necessitamos listar tópicos, mas que não necessariamente sigam alguma ordem específica. Possuem apenas marcadores, mas não são ordenadas. O Markdown possui três caracteres diferentes para formatar essas listas, são equivalentes. Os caracteres são: "*" (asterisco), "+" (mais) e "-" (menos). Veja os exemplos:
Lista com asteriscos:
- Primeiro tópico.
- Segundo tópico.
Lista com sinal de mais
- Primeiro tópico.
- Segundo tópico.
Lista com sinal de menos
- Primeiro tópico.
- Segundo tópico.
## Listas Ordenadas
As listas ordenadas são bastante úteis quando há a necessidade de ordenar os tópicos, como o passo a passo de uma receita, por exemplo, que precisa seguir uma sequência para dar certo. Para formatar esse tipo de lista, utilize o símbolo "@" (arroba) seguido de um ponto. A lista será ordenada automaticamente.
Exemplo: @. Primeiro tópico. @. Segundo tópico.
### Exercícios
1. Abra o arquivo "Testando Markdown.txt" e vá para o final.
2. Escreva uma lista com marcadores usando asterisco.
3. Escreva uma lista com marcadores usando mais.
4. Escreva uma lista com marcadores usando menos.
5. Escreva uma lista ordenada.
6. Salve e feche o arquivo.

View File

@ -0,0 +1,13 @@
# Introdução ao Markdown
## Notas de Rodapé
Uma nota de rodapé é bastante útil para referenciar um site, link ou detalhes a respeito de determinado assunto. A nota é composta por dois elementos: Uma marcação no texto que fará referência a essa nota, e uma definição da nota que aparecerá no fim do documento. Veja o exemplo: *Leia sobre isso no livro. [^1]*
Ou seja, o "1" na primeira linha está referenciando os detalhes que estão na segunda. Note que o "1" é apenas uma referência para marcar a nota, poderia escrever qualquer outro número, a ordem nesse caso não importa. As notas serão ordenadas à medida que forem referenciadas no texto.
### Exercícios
1. Abra o arquivo de testes do markdown.
2. Incira notas de rodapé espalhadas pelo texto. Não se importe com a ordem dos números.

View File

@ -0,0 +1,35 @@
# Músicas
## Reprodução de Músicas e Vídeos
É possível reproduzir músicas e vídeos usando o terminal. Para isso, será utilizado o reprodutor Mplayer, um excelente programa de reprodução.
Após instalá-lo, acompanhe as instruções abaixo.
## Reprodução de Músicas
Para reproduzir músicas, digite o seguinte comando: *mplayer musica.mp3* Se você não estiver localizado no diretório onde estão salvas as suas músicas, é preciso digitar o caminho completo. Você também pode reproduzir um diretório inteiro. Para isso, digite: *mplayer caminho-do-diretorio * * O asterisco informa ao Mplayer para reproduzir todo o conteúdo do diretório.
## Reprodução de Vídeos
Para reproduzir vídeos, basta executar o mesmo comando executado anteriormente para músicas, o que muda é a extensão. Para reproduzir um vídeo em formato MP4, digite: *mplayer video.mp4*
## Opções
Veja abaixo algumas opções do Mplayer:
Setas esquerda e direita: Avança e volta em segundos. PageDown e PageUP: Avança e volta em minutos. P ou barra de espaço: Pausar. F: Muda de janela para tela inteira e vice versa. / e \*: Controle de volume.
### Exercícios
1. Instale o Mplayer, navege até um diretório de músicas e reproduza uma delas.
2. Navegue até um diretório de vídeos e reproduza um deles.
3. Reproduza uma música passando o caminho completo do diretório.
4. Reproduza um vídeo passando o caminho completo do diretório.
5. Reproduza um diretório completo de música e vídeo.
6. Avance, retroceda e altere o volume.

View File

@ -0,0 +1,13 @@
# Cliente Mutt
## Lista de Contatos
É fundamental ter uma lista com os endereços de e-mail que você precisa contatar com frequência. Para adicionar um contato na lista, abra o Mutt e digite "a". Será solicitado o apelido, o endereço de e-mail e o nome do contato. Essa lista pode ser editada no arquivo *~/.muttrc* quando necessário. O contato é definido por (alias) no arquivo.
### Exercícios
1. Abra o Mutt e adicione contatos à lista.
2. Salve os contatos e feche o programa.
3. Abra o arquivo de configurações, procure os contatos e edite.

View File

@ -0,0 +1,19 @@
# Cliente Mutt
## Personalizando Atalhos
No Mutt, é possível personalizar os atalhos, atribuindo atalhos à sua escolha, substituindo os originais. Isso é feito no arquivo .muttrc. Se for feito no arquivo que fica na sua pasta de usuário, as alterações só funcionarão no seu usuário. Se quiser aplicar as alterações em todo o sistema, basta fazer as alterações no arquivo de mesmo nome na pasta /etc.
O Mutt possui vários tipos de menus, e os atalhos devem ser associados a um ou mais deles. Para associar um atalho a vários menus, basta separá-los por vírgulas. Alguns menus existentes são: pager: É o modo usado para exibir dados de mensagens / anexos e listas de ajuda. attach: É usado para acessar os anexos nas mensagens recebidas. index: É a lista de mensagens contidas em uma caixa de correio. compose: É a tela usada ao enviar uma nova mensagem.
Existem mais menus, que podem ser consultados nos manuais do programa. A atribuição é feita da seguinte forma: bind menu atalho função Onde: bind: Indica a atribuição de um atalho. menu: Indica o menu a qual aquele atalho pertence, ou seja, qual o tipo de ação será executada (navegação, ajuda, anexos, etc.). atalho: A combinação de teclas atribuída por você. função: A função que o atalho executará naquele menu. Nos manuais existe uma tabela completa de funções e teclas que podem ser atribuídas. Para atribuir o control, por exemplo, e mais uma letra, basta escrever: \cx Onde: c: Representa a tecla Control. x: Representa a combinação atribuída, pode ser qualquer letra disponível. Observação: No caso do Ctrl, maiúsculas e minúsculas são ignoradas tanto para ele quanto para a letra que o acompanha. Nos demais casos, maiúsculas e minúsculas não são ignoradas. Segue abaixo alguns exemplos de atribuições: bind pager j next-line bind pager k previous-line bind pager g top bind pager G bottom bind attach,index g first-entry bind attach,index G last-entry bind attach,index,pager \CD next-page bind attach,index,pager \CU previous-page
Note que, no exemplo acima, a letra "g" foi usada várias vezes. Mas em alguns comandos estava maiúscula, e em outros minúscula. E, mesmo assim, note que elas se repetiram, mas para menus diferentes.
### Exercícios
1. Antes de qualquer alteração, faça uma cópia do seu arquivo .muttrc original para outra pasta. Dessa forma, qualquer alteração errada pode ser reparada, bastando copiar o arquivo original novamente para sua pasta de usuário.
2. Personalize seu arquivo .muttrc.
3. Utilize a tabela de funções, menus e teclas para criar suas próprias combinações.

View File

@ -0,0 +1,37 @@
# Cliente Mutt
## Primeiros Passos
Hoje o e-mail executa um papel absolutamente essencial no processo da comunicação. A praticidade e rapidez com que se pode enviar mensagens pela internet a vários destinatários elegeu esta ferramenta como um dos principais recursos de comunicação utilizados na atualidade. O Mutt é um excelente cliente de e-mail para terminal. Depois de instalado, basta digitar "mutt" no terminal para executá-lo. Ele pode parecer meio sem graça no começo, mas não se preocupe. A configuração inicial não é muito amigável, mas é possível resolver de forma simples. O arquivo *~/.muttrc* deve ser criado e configurado para ficar do jeito que você quer. Abaixo seguem algumas configurações básicas: Observação: Para colocar comentários no arquivo de configuração, basta iniciar a linha com um "#". Isso é importante antes de cada configuração, para não esquecer o que ela significa.
# Configuração do SMTP
set smtp_url = "smtp://email@smtp.dominio.com:587/"
# set smtp_pass = "senha"
set from = "email@dominio.com" set realname = "Seu Nome"
# Configurações Imap
# Ativação da segurança TLS
set ssl_starttls=yes
# Sempre usar TLS
set ssl_force_tls=yes
Basta salvar o arquivo e executar o Mutt. Alguns comandos básicos ao abrir o Mutt: q: Sai do Mutt. d: Apaga a mensagem. u: Desfaz a ação do delete. r: Responde um e-mail. g: Responde para todos os endereços que constam na mensagem. @: Mostra o e-mail do autor. v: Mostra os arquivos anexos. m: Cria uma nova mensagem. ?: Ajuda do programa.
Para enviar um e-mail, faça o seguinte: *echo 'Conteúdo do e-mail' | mutt -s 'Assunto do e-mail' email-do-destinatario@dominio.com* Para enviar um anexo, faça o seguinte: *echo 'Conteúdo do e-mail' | mutt -s 'Assunto do e-mail' -a anexo1.txt anexo2.txt -- email-do-destinatario@dominio.com*
### Exercícios
1. Configure o Mutt.
2. Execute o programa e teste suas opções.
3. Envie um e-mail de teste.
4. Envie um e-mail de teste com anexo.

View File

@ -0,0 +1,40 @@
# Editor Nano
## Edição de Arquivos Com Nano
O Nano é uma alternativa para edição de textos no terminal, e está disponível
em quase todas as distribuições Linux.
O Nano é uma boa escolha para iniciantes por ser mais fácil de usar e possuir uma interface bastante intuitiva.
Vamos abrir o nano e conhecer um pouco sobre esse editor: Para abrir um novo arquivo, digite o comando: *nano novo_arquivo.txt*
Para abrir um arquivo existente, o nosso antigo arquivo de testes, por exemplo, digite: *nano teste* Observação: Se o arquivo não existir, será criado automaticamente.
Para abrir o Nano sem carregar nenhum arquivo, basta digitar: *nano* Depois, basta usar o comando: *^r* e informar o nome do arquivo que deseja abrir.
Ao abrir o editor, várias funções são anunciadas. Vale notar que ^ (circunflexo) é o mesmo que Ctrl, sendo assim, ^G significa Ctrl + G.
Abaixo, seguem algumas opções do editor:
^G: apresenta a tela de ajuda sobre mais comandos do editor. ^X: sai do editor; se o arquivo não estiver salvo será solicitado para salvar antes de sair. ^O: salva um arquivo. ^R: Solicita o nome de um arquivo para abrir. Setas: Navegam pelo texto.
Edite o arquivo normalmente, use "enter" para mudar de linha.
Feche o arquivo. Se ele não estiver salvo e quiser salvá-lo, siga as instruções. Digite: *y* Para confirmar que deseja salvar, depois pedirá o nome do arquivo. Basta teclar "enter". Se quiser, modifique o nome do arquivo e confirme com "y".
Você pode ler o arquivo com o próprio Nano ou com o comando "cat" para conferir o conteúdo.
### Exercícios
1. Crie um novo arquivo com o nano.
2. Escreva um texto e salve o arquivo.
3. Escreva mais texto e feche o editor. Salve o arquivo quando for solicitado.
4. Verifique se o arquivo foi criado. Abra-o com o nano e leia o conteúdo com as setas.
5. Edite o arquivo e feche o editor.

View File

@ -0,0 +1,49 @@
# Editor Nano
## Navegando Pelo Editor
Depois de editar textos com o Nano, abordaremos alguns comandos de navegação pelo texto.
Confira a seguir:
Abrir vários arquivos simultaneamente: *nano teste1 teste2* Neste caso, apenas o primeiro será exibido. Para navegar entre os arquivos, utilize: *Alt + >* (maior) para navegar para frente, e: *Alt + <* (menor) para navegar para trás.
Abrir um arquivo em modo somente-leitura: *nano -v teste*
Ir para uma linha e coluna específicas (com o arquivo já aberto): *Alt + g* <número da linha, [número da coluna]> O número da coluna é opcional.
Levar o cursor para o início e para o final do documento: Para o início: *Alt + * Para o final: Alt + /
Rolar uma página para frente e para trás: Para frente: *^v* Para trás: *^y*
Recortar a linha toda onde se encontra o cursor e guardá-la no buffer de transferência: *^k* Essa opção pode ser usada para apagar uma linha inteira.
Colar o conteúdo do buffer de transferência no local onde se encontra o cursor: *^u*
Efetuar uma busca por palavra no texto: *^w* <palavra> <enter> Para repetir a busca pela mesma palavra, digite *Alt + w*
A ajuda do programa: *^g*
Selecionar texto (região) para copiar ou recortar trechos de texto: Primeiramente, posicione o cursor no local a partir de onde o texto desejado será selecionado (a seleção pode ser feita tanto para frente quanto para trás) Pressionar a combinação de teclas: *Alt + a* para ativar a marcação de textos (modo de seleção). Efetuar a seleção usando as setas direcionais do teclado. Após selecionar o texto desejado como mostrado no item #13, pressione agora a combinação de teclas *Alt + 6* para copiar o conteúdo selecionado para o buffer de transferência. Para colar o texto em outro local dentro do arquivo, posicione o cursor no destino e use a combinação: *^u*
Mostrar a posição atual do cursor dentro do texto, incluindo linha, coluna e número do caractere: *^c*
Observação: Lembre-se que ^ (circunflexo) representa "ctrl".
### Exercícios
1. Crie outro arquivo com o Nano, escreva um texto e salve o arquivo.
2. Abra os dois arquivos simultaneamente com o Nano e navegue entre eles.
3. Escolha um dos arquivos, copie uma linha de texto e cole no outro arquivo.
4. Escolha uma linha de texto de sua preferência e a remova.
5. Cole a linha anteriormente removida no outro arquivo.
6. Verifique qual a posição atual do cursor no texto.
7. Mova o cursor para o início do texto e vá para uma linha e coluna expecíficas. Depois role até o fim do arquivo.
8. Busque por uma palavra repetidas vezes em ambos os arquivos e verifique os resultados.

View File

@ -0,0 +1,27 @@
# Rede
## Utilização do Rsync
O Rsync, como o nome sugere, é um programa que copia e sincroniza remotamente os dados entre duas máquinas. O software herdou as propriedades de criptografia do protocolo SSH, o que torna sua transmissão de dados mais segura que o FTP. Ele é excelente para copiar e fazer backup de informações. Para funcionar, o Rsync e o SSH devem estar instalados em ambas as máquinas que vão se comunicar. Alguns parâmetros do Rsync são: -v: Verborrágico, o programa mostrará todas as ações na tela. -r: Cópias de dados de maneira recursiva. -a: Modo de arquivamento, o modo de arquivo permite a cópia de arquivos de forma recursiva e também preserva links simbólicos e permissões de arquivos. -z: Arquivos serão comprimidos. -h: Deixa a saída de forma legível para seres humanos.
## Copiando ou Sincronizando Diretórios Locais
A sintaxe fica da seguinte forma: *rsync parâmetros origem destino* Se o diretório de destino não existir, será criado automaticamente.
## Copiando ou Sincronizando Arquivos Locais Para um Servidor Remoto
Um pré-requisito para enviar seus arquivos para o servidor remoto é possuir uma conta de usuário no sistema. A sintaxe fica da seguinte forma: rsync parâmetros diretorio-local usuario@servidor:/diretorio-remoto* A senha de usuário será solicitada. Basta digitá-la e os arquivos serão copiados.
## Copiando ou Sincronizando Arquivos do Servidor Para Sua Máquina Local
Esta situação também requer um login para autenticação no servidor,.
Se você entendeu como funciona o comando anterior, basta inverter a ordem dos parâmetros. A sintaxe fica da seguinte forma: *rsync parâmetros usuario@servidor:/diretorio-remoto diretorio-local*
### Exercícios
1. Copie ou sincronize seus arquivos no seu computador com o Rsync.
2. Copie ou sincronize seus arquivos do computador com um servidor remoto.
3. Copie ou sincronize arquivos do servidor para seu computador.

View File

@ -0,0 +1,25 @@
# Rede
## Utilização do SFTP
FTP (Protocolo de Transferência de Arquivos) é um protocolo popular de transferência de arquivos entre sistemas. SFTP (Protocolo de Transferência de Arquivos com SSH) é um protocolo separado, empacotado com SSH que funciona de forma similar em cima de uma conexão segura. O FTP não é recomendado, já que não tem segurança. Para se conectar com SFTP, basta seguir o mesmo estilo de conexão SSH da seguinte forma: *sftp usuario@servidor* Para navegar no SFTP os comandos são os mesmos do terminal. Se precisar, digite: *help* para obter ajuda. Os comandos exibirão o conteúdo do servidor. Mas e se quiser ver os arquivos e diretórios da sua máquina? Isso é possível, caso contrário não seria interessante transferir arquivos do computador para o servidor e do servidor para o computador. Para ver o conteúdo do seu computador, basta preceder cada comando pela letra "l". Por exemplo, para exibir o conteúdo de um diretório local, digite: *lls* e para trocar de diretório, digite: *lcd diretório*.
## Download de Arquivos e Diretórios
Para transferir um arquivo do servidor para o computador, utiliza-se o comando "get". Digite: *get nome-do-arquivo*. Se você quiser copiar o arquivo com um outro nome, digite: *get nome-do-arquivo novo-nome*. Para transferir um diretório inteiro com seu conteúdo, digite: *get -r Diretório*. Observação: O parâmetro "-r" indica recursão. Sem ele, o diretório será copiado, mas sem seu conteúdo.
## Upload de Arquivos e Diretórios
Para transferir arquivos do computador para o servidor, o comando utilizado é o "put". Funciona de maneira semelhante ao "get". Digite: *put Nome-do-Arquivo*. Para copiar o arquivo com um novo nome, digite: *put Nome-do-Arquivo Novo-Nome* Para transferir um diretório inteiro com seu conteúdo, digite: *put -r Diretório*.
### Exercícios
1. Conecte-se com SFTP e navegue pelos diretórios.
2. Transfira um arquivo do servidor para seu computador.
3. Transfira um diretório do servidor para seu computador.
4. Transfira um arquivo do seu computador para o servidor.
5. Transfira um diretório do seu computador para o servidor.

View File

@ -0,0 +1,21 @@
# Rede
## Utilização do SSH
SSH (Shell Seguro) é um protocolo de administração remota que permite aos usuários controlar e modificar seus servidores pela Internet. O serviço foi criado como uma substituição segura para o Telnet, e usa técnicas criptográficas para garantir que todas as comunicações do servidor remoto aconteçam de forma criptografada. Ele fornece um mecanismo para autenticar um usuário remoto, transferindo entradas do cliente para o servidor de hospedagem e retransmitindo a saída para o cliente. Você pode executar comandos de segurança de modo remoto, como se você estivesse operando fisicamente o computador. O comando SSH é dividido em três partes: ssh 'usuario'@'endereço do servidor' O SSH indica que você deseja abrir uma conexão segura. O usuário representa a conta que você quer acessar, a raiz, por exemplo. O endereço do servidor representa o computador que você quer acessar. Pode ser um endereço IP, como por exemplo: 244.235.23.19, ou um endereço de domínio, por exemplo: www.exemplodeendereco.com. Ao pressionar "enter", será solicitada a senha da conta que você quer acessar. Basta digitá-la e acessar o servidor. Nada aparece na tela, mas a senha é enviada.
Os comandos são os mesmos de um computador local. Para copiar arquivos entre sua máquina e o servidor, existe uma versão segura do comando "cp", o "scp" (Secure Copy). Para copiar arquivos da máquina local para o servidor, faça o seguinte: *scp diretorio-local usuario@servidor:/diretorio-remoto*
Para copiar do computador remoto para o local, basta inverter os parâmetros: *scp usuario@servidor:/diretorio-remoto diretorio-local*
### Exercícios
1. Abra o terminal e faça uma conexão SSH.
2. Liste os arquivos do diretório.
3. Troque de diretório.
4. Copie arquivos do seu computador para o servidor usando o comando de cópia segura.
5. Copie arquivos do servidor para seu computador.

View File

@ -0,0 +1,15 @@
# Rede
## Utilização do Wget
O Wget é muito útil para fazer downloads de endereços na Internet. Suas principais vantagens é a possibilidade de restringir o tipo de arquivo a ser baixado e a possibilidade de retomar o download de onde parou, caso este seja interrompido. Para fazer um download, basta fornecer o link do que desejar baixar. Exemplo: *wget http://www.site.com.br/download/arquivo-exemplo.zip* Abaixo, seguem alguns parâmetros do Wget: -r: Download recursivo. -nd: Não baixar diretórios, apenas os arquivos. -c: Retomar o download de onde parou. Exemplo: *wget -c http://www.site.com.br/download/arquivo-exemplo.zip* --accept=: Baixar apenas arquivos especificados. Por exemplo, se quiser baixar apenas arquivos .zip, digite: *wget -r --accept=zip http://www.site.com.br/download//*. É possível especificar várias extensões, separando por vírgulas. Se quiser fazer vários downloads, basta colocar todos os links em um arquivo e passar o caminho dele como parâmetro. Exemplo: *wget -i arquivo_com_urls.txt*
### Exercícios
1. Faça um download da Internet.
2. Faça download de arquivos com a mesma extensão.
3. Baixe arquivos sem seus diretórios.
4. Reuna vários links em um arquivo e faça download.

View File

@ -0,0 +1,31 @@
# Gerenciamento de Pacotes
## Instalando e Removendo Pacotes
No Linux, os programas são disponibilizados em forma de pacotes. Existem repositórios (o local onde os pacotes ficam armazenados) oficiais e dos próprios usuários.
## Instalando um Pacote
Para instalar um pacote ou programa, execute o seguinte comando no terminal: *sudo pacman -S pacote* Será solicitada a sua senha de administrador. Basta digitá-la e pressionar "enter".
## Removendo um Pacote
Para remover um pacote, execute o seguinte comando: *sudo pacman -R pacote*
## Opções:
Abaixo serão listadas algumas opções extras do comando "pacman": Procurar pacote: *sudo pacman -Ss pacote* Listar todos os pacotes instalados: *sudo pacman -Q* Desinstalar pacotes, dependências e todos os registros: *sudo pacman -Rscn* Procurar atualização: *sudo pacman -Su*
### Exercícios
1. Pesquise um pacote.
2. Instale um pacote no computador.
3. Procure atualizações dos pacotes.
4. Liste todos os pacotes instalados no computador.
5. Remova um pacote.
6. Remova um pacote com todas as dependências e registros.

View File

@ -0,0 +1,15 @@
# Gerenciamento de Pacotes
## Opções Avançadas
O "pacman" tem opções interessantes para gerenciar pacotes. Abaixo serão listados mais alguns comandos úteis: Instalar pacotes sem precisar de confirmação: *sudo pacman -S pacote noconfirm* Instalar pacotes sem dependências: *sudo pacman -Sdd* Listar pacotes desnecessários (sem dependências): *sudo pacman -Qdt* Apagar pacotes desnecessários (sem dependências): *sudo pacman -Rns $(pacman -Qqdt)* Apagar pacotes e deixar suas dependências no computador: *sudo pacman -Rdd*
### Exercícios
1. Instale pacotes ignorando as dependências.
2. Instale pacotes sem precisar de confirmação.
3. Liste pacotes que não possuem dependências e os remova.
4. Remova pacotes deixando as dependências no computador.

View File

@ -0,0 +1,13 @@
# Permissões
## Alterando o Dono e / ou Grupo de Arquivos
O comando "chown" permite alterar o dono e/ou grupo de um arquivo. Os parâmetros do comando são: -c: Informa quais arquivos estão sendo alterados. -R: Altera, recursivamente, o dono e/ou grupo. Exemplo: *chown -Rc aluno:informatica teste* O comando acima atribui o diretório teste e todos os arquivos dele ao usuário aluno e ao grupo informática. Para alterar apenas o dono, digite: *chown -Rc aluno teste* Para alterar apenas o grupo, digite: *chown -Rc :informatica teste*
### Exercícios
1. Altere o dono do diretório teste para seu nome e o grupo para informática.
2. Altere apenas o dono do diretório.
3. Altere apenas o grupo do diretório.

View File

@ -0,0 +1,17 @@
# Permissões
## Atribuindo Permissões
O comando "chmod" atribui permições de acesso a um arquivo ou diretório. Os parâmetros são: u: Permissão para o dono (user). g: Permissão para o grupo (group). o: Permissão para usuários que não são membros do grupo (others). a: Permissão para todos (all). r: Leitura. w: Gravação. x: Execução (para arquivos) ou autorização de acesso (para diretórios). Exemplo: *chmod ug+rw teste.txt* O comando define que o arquivo "teste.txt" tem permissão de leitura (r) e gravação (r) para usuários e membros do grupo. Também é possível definir permissões com números: 0: Sem permissão. 1: Permissão de execução. 2: Permissão de gravação. 3: Permissão de gravação e execução. 4: Permissão de leitura. 5: Permissão de leitura e execução. 6: Permissão de leitura e gravação. 7: Permição de leitura, gravação e execução. Os números são interpretados da direita para a esquerda, de modo que o último número definido no comando será a permissão para outros usuários, o do meio será para membros do grupo e o primeiro para o dono. Exemplo: *chmod 764 teste.txt* O comando acima define permissão de leitura, gravação e execução para o dono (7), leitura e gravação para os membros do grupo (6) e somente leitura para outros usuários (4).
### Exercícios
1. Defina permissão de leitura, gravação e execução para o dono do arquivo, para membros do grupo, e somente leitura para outros usuários.
2. Defina permissão de leitura, gravação e execução para o dono, somente leitura para o grupo e nenhuma permissão para outros usuários.
3. Defina permissão de leitura, gravação e execução para o grupo e somente leitura para outros usuários.
4. Defina permissão de leitura, gravação e execução para todos.
5. Defina permissão de leitura, gravação e execução para o dono, leitura e execução para membros do grupo e somente execução para todos os usuários.

View File

@ -0,0 +1,19 @@
# Utilização de Alias
Um recurso muito interessante disponível no sistema operacional é o Alias. Um Alias nada mais é do que um apelido para determinada instrução. É muito útil, especialmente, para comandos grandes e que necessitam ser usados com frequência. Para conhecer a lista de alias disponível, digite: *alias*
## Criando um Alias
É muito simples criar um alias. Por exemplo, em vez de digitar "clear" para limpar o terminal, poderíamos digitar apenas "cl". Para isso, digite: *alias cl='clear'* O comando funciona da seguinte forma: Em primeiro lugar vem o apelido, e depois a instrução correspondente.
## Tornando o Alias Fixo
O único problema é que todo alias criado dessa forma só funcionará enquanto o seu usuário estiver ativo. Para tornar um alias fixo no seu usuário, é preciso adicioná-lo no arquivo ".bashrc" que está na pasta home do usuário em questão. Ao abrir o arquivo, note que existem várias configurações. Existe uma sessão específica para alias. Procure por: "# some more ls aliases". Adicione seu alias nessa sessão, com a mesma sintaxe já feita no terminal. Salve o arquivo e saia do editor. Depois, tente executar seu alias. Ele não funcionará, pois o terminal ainda não leu o arquivo para aplicar a configuração. Para isso, você pode encerrar o terminal e abrir novamente, ou então utilizar o comando "source" da seguinte forma: *source .bashrc* Agora sim, digite novamente seu alias e veja que funcionará normalmente.
### Exercícios
1. Atribua um apelido a um comando que julgue importante.
2. Edite o arquivo de configuração e torne seus aliases fixos.
3. Escolha um dos métodos para que o terminal leia o arquivo e aplique a configuração.

View File

@ -0,0 +1,23 @@
# Screen
## Uso do Screen
O Screen é um multiplexador de terminais que permite ao usuário, em uma mesma sessão, abrir várias janelas e realizar atividades paralelas. Se você precisa realizar outra tarefa enquanto faz um download, por exemplo, o screen é muito útil, já que é possível abrir outra tela de terminal enquanto seu download é feito em segundo plano.
## Utilização
Para utilizar o screen, basta digitar: *screen* Nada vai aparecer, mas o screen estará aberto nesse momento. Agora, você pode executar a tarefa que quer deixar em segundo plano enquanto faz outras. Depois disso, pressione a combinação: *Ctrl+A D* Essa combinação de teclas fará com que essa sessão virtual seja separada (detached) da sessão original, liberando por consequência o terminal para realização de outra tarefa. Para listar as sessões abertas, digite: *screen -ls* Se você estiver em outra sessão e quiser restaurar a anterior, para verificar o estado de download, por exemplo, digite: *screen -r* Observação: Quando o comando tem uma letra separada, como o comando visto acima (Ctrl+A D, por exemplo), significa que Ctrl+A devem ser pressionadas ao mesmo tempo, e o D deve ser pressionado só após soltar as teclas anteriores.
## Múltiplas Telas
Para criar e navegar por mútiplas telas dentro do screen, veja os comandos a seguir: Ctrl+A c: Criar nova janela. Ctrl+A p: Ir para a tela anterior. Ctrl+A n: Ir para a tela seguinte. Para fechar o screen, execute: *exit*
### Exercícios
1. Abra o terminal, execute o screen e inicie o download de um arquivo grande.
2. Crie mais telas e execute outras tarefas.
3. Navegue entre as telas, indo para as telas seguintes e voltando.
4. Restaure a tela do download para verificar seu andamento.

View File

@ -0,0 +1,13 @@
# Sha1Sum
Ao baixar uma imagem de um sistema operacional, é importante verificar sua integridade antes de executá-la, evitando, assim, futuros erros. O Sha1Sum permite verificar se o arquivo baixado está com alguma falha ou corrompido.
## Utilização
Você pode executá-lo diretamente na pasta onde está o arquivo baixado, ou digitar o caminho completo do arquivo. Digite: *sha1sum nome-do-arquivo.iso* Uma resposta será exibida, informando o estado do arquivo atual.
### Exercícios
1. Baixe um arquivo ISO da internet.
2. Execute o comando e verifique a integridade do arquivo.