COMO-INSTALAR-UMA-DISTRIBUIÇÃO-LINUX-2017?

 

Um sistema operacional, é o programa principal num computador que controla o modo que o computador funciona e torna possível que através dele todos os outros programas possam funcionar permitindo que eu possa interagir com o computador. Eu falo com o computador e o computador entende o que eu quero que ele faça e executa.

 

Os sistemas operacionais Linux são montados sobre o Kernel. O nome do Kernel é Linux. Outros programas que se baseiam no Kernel falam com o Kernel e o Kernel fala com o Hardware. A totalidade é o sistema operacional. Existem vários. Apesar de serem parecidos, possuem suas diferenças. Algumas das distribuições que eu jpa instalei e usei algumas vezes são:

 

Debian, Solus, Manjaro, Ubuntu, Fedora, Deepin, Linux Mint, Arch Linux entre outras…

 

 

Para instalar um sistema operacional Linux no meu computador, eu sei particionar o HD, criar as partições que receberão o sistema operacional Linux para ficar em dual boot por, exemplo, com o Windows.

 

  • Hoje em dia, as principais distribuições Linux automaticamente fazem isto para os usuários atraves dos instaladores que vem prontos para serem utilizados.

 

Então, ligo o computador, entro no Setup da BIOS do computador e configuro o DVD-R/CD-ROM/Pendrive para ser o primeiro dispositivo de boot (inicialização).

 

Insiro o CD/DVD/Pendrive da distribuição Linux no driver de CD e reinicio o computador.

 

Seleciono a opção “Start” e pressiono Enter.

 

Com o sistema carregado, verifico se estou conectado a internet. Configuro o screensaver e o power manager para a máquina não dormir nem bloquear a tela durante a instalação. Escolho o idioma que desejo instalar o sistema e assim por diante.

 

Esta parte não tem mistério. Antes de instalar é bom assistir a um video do youtube por exemplo; sobre a instalação da distribuição escolhida só para ficar mais seguro e ver que hoje é bem fácil mesmo.

HOJE-EU-VOU-APRENDER-A-USAR-O-TERMINAL-DO-LINUX

JUNHO-2017

 

 

 

Eu não sei nada de Linux, mas quero aprender. Preciso pesquisar, anotar, pensar e testar na pratica as coisas que quero aprender. O Linux é um universo gigantesco cheio de vida, com muitos projetos inteligentes e interessantes sendo imaginados, planejados e executados a toda hora. Cresce sem parar. Quem obtém o melhor do universo Linux? As pessoas que gostam de aprender alguma coisa.

.

MINHAS ANOTAÇÕES BUSCAM DEFINIÇÕES COMANDOS TERMINAL LINUX BASH SAIDAS ENTRADAS – BÁSICO – INICIANTE – INTERMEDIÁRIO

.

Para qualquer serviço além do que um usuário comum faz, no Linux, a gente sempre acaba usando o terminal. O emulador de terminal que usamos hoje em dia, vem de outros tempos. Um monitor antigo que tinha uns 80×24 e era o único modo de se comunicar com o computador (software+harware).

.

Se eu quiser ser algo mais que um usuário normal, comum de computadores é bom eu aprender alguma coisa sobre o terminal do Linux. Também é bom aprender a usar um ou dois programas gráficos muito, muito bem.

.
O KERNEL DAS DISTRIBUIÇÕES LINUX

 

Se eu tenho um computador e todos os aplicativos funcionando harmoniosamente para executar os trabalhos do dia-a-dia. Essa “harmonia” é possível graças ao sistema operacional funcionando como uma interface entre o software, o hardware e o usuário. O responsável por esta harmonia é o Kernel criado por Linus Torwalds em 1991, na época ele era apenas um estudante de ciência da computação que teve necessidade de criar este programa.

Há pouco tempo, quase ninguém sabia da existência do kernel. Era algo muito abstrato e restrito até mesmo aos estudantes de computação das universidades e aos desenvolvedores, o usuário sequer ouvia esta palavra. Com o surgimento do Linux, qualquer usuário iniciante de Linux, já ouviu falar do kernel.

.

Eu mesmo por exemplo. Quando ouço falar de sistemas operacionais Linux, eu sei que todo o sistema operacional é montado sobre um único programa. É um programa sólido. Foi criado por um cara chamado Linus. Este programa é chamado de Kernel. Kernel é uma palavra inglesa que significa “núcleo”. O Kernel é o programa que está mais próximo do hardware. O kernel é a ponte que permite os programas conversarem com o hardware. O hardware responde aos aplicaticos por meio do Kernel. Os Kernels mais antigos podem não responder bem a novos hardwares. Pode ser que certos programas não funcionem bem se usar um Kernel antigo. Os aplicativos não conversam com o Hardware conversam com o Kernel ai sim, o Kernel sim conversa com o Hardware.

.

O Bash é um dos muitos interpretadores de comandos que existem e é o usado no Linux. Tem outros como o CSH o DOS o POWERSHELL e outros. Pelo Bash do terminal Linux eu posso alterar até mesmo o Kernel, mas, as distribuições Linux que escolho por usar já vem com o Kernel mais atual possível.

.

Então, o kernel é o núcleo do sistema operacional e dá aos softwares a capacidade de acessar o hardware. Por isto, o kernel do Linux é atualizado constantemente, acrescentando suporte a novas tecnologias. Usa módulos para adicionar suporte ou para melhorar no suporte a itens já existentes. A numeração do Kernel é muito fácil de aprender e é bem útil saber sobre ela. São 3 números:

.

Número principal: é o ‘primeiro’ número, o número mais à esquerda, indica as mudanças realmente principais no kernel.

.

Número secundário: é o número ‘do meio’, indica a estabilidade de um kernel particular. Números pares indicam uma versão estável e números ímpares indicam uma versão em desenvolvimento.

.

Número ‘de revisão’: é o ‘último’ número, indica a versão.

.

Por exemplo, o kernel 4.9.29 LTS é a vigésima nona versão do kernel 4.9.0. O LTS significa Long Term Support (suporte a longo prazo).

.

NOME DE ALGUNS SÍMBOLOS

 

‘ – Reticência

# – O nome deste símbolo é Cerquilha ou Cardinal

´ – Acento agudo

^ – Acento circunflexo

~ – Til

” – Aspas

/ – Barra

\ – Barra invertida ou contra-barra

– Traço

> – Maior que

& – E comercial

 

————————–
Alguns comandos neste texto meu são precedidos por dois tracinhos – – mas podem aparecer na internet como se fossem um traço só —

 

COMANDOS BÁSICOS
ls: lista os arquivos e diretórios da pasta (DIR no DOS);
clear: limpa a tela (CLS no DOS);
cd ___: entra em um diretório
cd: vai direto para o diretório raiz do usuário conectado
: abre uma linha de comando “livre” , onde você pode digitar um comando extenso (digite q e clique em enter para sair)
pwd: mostra o diretório inteiro que você está
cat: Imprime saída de texto.
df: Mostra as partições usadas ou livres do HD
|more: lista o arquivo com pausa de linha em linha (exemplo: CAT leiame |more)
|lpr: imprime o arquivo listado
free: mostra a memória do computador (MEM no DOS)
shutdown: desliga o computador
shutdown -r now : reinicia o computador
shutdown -h now : desliga o computador. OBS.: O NOW pode ser mudado. Por exemplo:

shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos).
Reboot: reinicia o sistema instantaneamente (pouco recomendável, preferível shutdown

-r now). Use somente em emergências
startx: inicia o X-Windows (interface gráfica) do Linux
mkdir: cria um diretório (MD no DOS)
rmdir: destrói um diretório VAZIO (RD no DOS)
rm: apaga um arquivo (DEL no DOS)
rm -r: apaga um diretório
who: mostra quem está usando a máquina
wc: conta a quantidade de:
wc -c arquivo : quantidade de bytes
wc -w arquivo : quantidade de palavras
wc -l arquivo : quantidade de linhas
date: mostra data e hora
type: explica um determinado arquivo do sistema
file: descreve um determinado arquivo
find / – name ____ : procura arquivo “____”
useradd nome_do_novo_usuário: cria uma nova conta usuário
passwd nome_do_usuário: cria ou modifica a senha do usuário
userdel -r nome_do_usuário: apaga um usuário
su: passa para o superusuário (perceba que no prompt irá mudar o $ pelo #)
sndconfig: permite configurar a placa de som
TAR: arquivo para criar Backups
TAR -c: cria
TAR -x: restaura
TAR -v: lista cada arquivo

 

TAR -t: lista os arquivos de backups
write: escreve mensagens para outro usuário em rede
mv: move arquivos
linuxconf: configuração do Linux
alias: possibilita a criação de comandos simples
&: coloca o comando desejado em background, ou seja, trabalha enquanto você faz outra coisa no computador
ps: relata os processos em execução
kill: encerra um ou mais processos em andamento
history: mostra os comandos que o usuário já digitou
lpr: imprime um arquivo (exemplo: lpr arquivo)
lpq: mostra o status da fila de impressão
lprm: remove trabalhos da fila de impressão
mtools: permite o uso de ferramentas compatíveis com DOS. Após digitar o comando, você verá que todo comando do DOS terá um M na frente. É normal.

 

PRATICAMENTE TODOS OS COMANDOS POSSUEM PARÂMETROS QUE PERMITEM INCREMENTAR SUAS FUNCIONALIDADES.

 

 

Se eu digitar o comando ls com o parâmetro -R (ls -R), este mostrará todos os arquivos do diretório/pasta, inclusive os ocultos.

ABRO O EMULADOR DE TERMINAL QUE USA O BASH, BUSCANDO NO MENU DO LINUX O TERMINAL. O BASH É O INTERPRETADOR DE COMANDOS DO TERMINAL LINUX.

O BASH É UMA LINGUAGEM QUE DEVE SER PRATICADA EM MODO INTERATIVO. A GENTE QUE QUER APRENDER ALGUMA COISA DE BASH DEVE SER ATIVO E TESTAR OS COMANDOS. LER, ENTENDER E PRATICAR. BRINCAR COM O TERMINAL DO LINUX, PARA MIM, É PRATICAR.

 

Para eu saber sobre comandos, posso usar man + nome_do_comando, info + nome_do_comando, nome_do_comando + help.

Vou usar o Terminal em modo interativo. Tem comandos built in que são internos, e comandos não internos. O Terminal usa pipes e tem uma filosofia que é saber que A UNIÃO DE VÁRIOS COMANDOS, PIPES E PARÂMETROS FAZ A FORÇA.

O Terminal possui meios para ser executado em primeiro plano e segundo plano. Terminal e Console, são duas coisas diferentes. Shell script usado no terminal do Linux, nada mais é que dialogos programados. O terminal controla comandos executados. Pausa, para, reinicia… No Bash do terminal Linux posso executar multiplos comandos e posso fazer os comandos se comunicarem em primeiro plano e em segundo plano.

VEJO ALGO PARECIDO COM ISTO AO ABRIR O TERMINAL:

 

nome_do_usuário@nome_do_computador ~ $

Ao instalar a distro Linux, eu criei um nome de usuário e um nome para o computador e uma senha de administrador com cinco letras maiúsculas, cinco letras minúsculas, cinco simbolos e cinco números.

Quando o terminal pedir a senha ela será invisível. É uma interação entre o teclado e o terminal.

.

user@pc ~$

.

user é o usuário que está logado; pc é a máquina em que está logado; @ indica que user está logado em pc; ~ indica que o usuário está dentro do seu diretório pessoal, ou seja, /home/user; $ indica que é um usuário comum e não o administrador do sistema. Se fosse o administrador do sistema o simbolo seria #. Os diretórios mais especiais do Linux atualmente são /dev, /proc, /sys.

.

Para poder navegar pelas pastas do Linux, eu quero entender como estas pastas são organizadas. Estas pastas que são chamadas também de diretórios, possuem uma descrição fácil de entender.

.

 

ESTRUTURA DE DIRETÓRIOS/PASTAS DO LINUX
Diretório | Descrição
————————————
/bin   Arquivos binários de comandos essenciais do sistema.
————————————
/boot   Arquivos de boot (inicialização; boot-loader; Grub); kernel do Linux.
————————————
/dev   Dispositivos (devices) de entrada/saída: floppy, hardisk, cdrom, modem .
————————————
/etc   Arquivos de configuração (scripts) e inicialização.
————————————
/home   Diretório local (home) de usuários.
————————————
/lib   Bibliotecas e módulos(drives): compartilhadas com freqüência.
————————————
/mnt   Diretório de montagem de dispositivos, sistemas de arquivos e partição.
————————————
/opt   Para instalação de programas não oficiais da distribuição.
————————————
/proc   Diretório virtual (RAM) onde rodam os processos ativos.
————————————
/root   Diretório local do superusuário (root).
————————————
/sbin   Arquivos de sistema essenciais (binários do superusuário).
————————————
/tmp   Arquivos temporários gerados por alguns utilitários.
————————————
/usr   Arquivos de usuários nativos da distribuição.
————————————
/usr/local   Para instalação de programas não oficiais da distribuição.
————————————
/usr/src   Arquivos fontes do sistema necessários para compilar o kernel.
————————————
/var   Arquivos de log e outros arquivos variáveis.
————————————

 

.
ENTENDENDO COMO FUNCIONAM OS COMANDOS DO LINUX

.

Os comandos são como uma linha de produção. Cada comando executa uma função e no final temos o produto pronto. Por exemplo, os comandos ls, mkdir, cd, touch, echo, ps, pid, tty, find são comandos internos do Bash. O ls lista pastas e diretórios. O mkdir cria pastas. O cd muda de pasta ou diretório. O touch cria arquivos e atualiza data de acesso de arquivos e pastas. O echo ecoa o parâmetro que foi passado para ele. O ps permite ver processos, programas que estão rodando no sistema. O pid mostra o número do processo. O tty informa sobre o terminal. O find procura por arquivos em pastas e diretórios. Se eu quisesse ver todos os processos digitaria no terminal:

ps -ax

.

Se eu quisesse procurar por comandos executados anteriormente apertaria as teclas:

ctrl+R

.

Todos os comandos ficam gravados em um histórico que eu posso apagar se quiser digitando:

history -c

.

Se eu quisesse ver os arquivos de uma pasta exibidos por data de acesso usaria:

ls -t

 

Se eu quiser ver a pasta Imagens em primeiro lugar, digito:
touch Imagens

 

 

Depois digito:

ls -t

 

Se eu quiser ver a pasta Documentos em primeiro lugar, digito:
touch Documentos

 

Depois digito:

ls -t

 

 

APRENDENDO MAIS SOBRE O TERMINAL DO LINUX

 

O terminal possui entrada. Possui um local onde acontece o processo. Possui saida principal. Possui saída de erro. Então o terminal tem entradas e saídas que são usadas por processos, programas ou comandos em execução que por sua vez possuem identificadores PID. Um byte é igual a um caractere do teclado.

Pela entrada padrão do terminal (stdin) o computador (hardware+software) ouve. Acontece então um processo e obtemos respostas, pois a máquina fala pelas saidas padrão (stdout) e saida de erro (stderr) que são impressas na tela do terminal.

Posso redirecionar isto que aparece na tela do terminal para dentro de arquivos. Existem dois tipos de direcionamentos que estou aprendendo agora. Destrutivo e não destrutivo. Para redirecionar respostas para dentro de arquivos usa-se o simbolo  >.

 

ATALHOS DE TECLADO DO TERMINAL LINUX

Atalho | Função

Ctrl + a   Move o cursor para o início da linha

Ctrl + e   Move o cursor para o final da linha

Ctrl + l   Limpa a tela, semelhante ao comando clear

Ctrl + u   Apaga do cursor ao início da linha.

Ctrl + k   Apaga do cursor ao final da linha.

Ctrl + w   Apaga uma palavra antes do cursor.

Ctrl + _   Desfaz as últimas mudanças.

!!   Executa o último comando no histórico.

!abc   Executa o último comando no histórico começando com abc.

!n   Executa o comando de número n no histórico.

^abc^xyz   Substitui a primeira ocorrência de abc por xyz no último comando e executa o mesmo.

Redirecionando a saída do ls para um arquivo chamado saida-do-comando-ls.

Se eu digitar:

 

ls > saida-do-comando-ls

O que apareceria na tela do terminal vai ser gravado em um arquivo chamado saida-do-comando-ls. Usei “maior que” > comando destrutivo que vai reescrever sobre a informação no arquivo.

Para eu ver o que está escrito no arquivo saida-do-comando-ls uso cat. Fica assim:
cat saida-do-comando-ls

Se eu digitar:
ls >> saida-do-comando-ls

 

O que apareceria na tela do terminal vai ser gravado junto com o que estiver gravado anteriormente, em um arquivo chamado saida-do-comando-ls. Usei “dois maior que” >> comando não-destrutivo que vai escrever mais uma vez a informação no arquivo.

Para eu ver o que está escrito no arquivo saida-do-comando-ls uso cat. Fica assim:
cat saida-do-comando-ls

 

Para redirecionar usando a saida de erro (stderr[2]), usando modo não destrutivo (>>) e modo destrutivo (>) digito:
ls 2>> saida-do-comando-ls
ls 2> saida-do-comando-ls

 

 

Para forçar erro uso ls com uma palavra inventada qualquer.
ls plah

Para gravar a resposta “ls: não foi possível acessar ‘plah’: Arquivo ou diretório não encontrado” da saida de erro (2) mandando a informação do comando ls de plah para errols

ls plah 2> errols

 

 

Para eu ver o que está escrito em errols uso o comando cat. Fica algo assim:
~ $ cat errols
ls: não foi possível acessar ‘plah’: Arquivo ou diretório não encontrado
Se eu usar:

ls plah 1> errols
Não vai dar nada. Porque eu usei o comando destrutivo (>).
user@pc ~ $ cat errols
user@pc ~ $

 

 

EU QUERO SABER, ONDE ESTOU NO SISTEMA. QUERO QUE O TERMINAL ME DICA ONDE ESTOU. DIGITO pwd E APERTO A TECLA ENTER. RESULTADO:

user@pc ~$ pwd
/home/user
POSSO USAR COMANDOS PARA DIRECIONAR INFORMAÇÕES FILTRADAS PARA ARQUIVOS USANDO O COMANDO FIND. Uso find, cat, 1>, 2>, &> ESCREVO O SEGUINTE:

 

find (A resposta será enorme e tudo misturado.)
find /sys (A resposta será enorme e tudo misturado.)
find /sys 1> saidafind 2> errofind (Neste comando uma parte vai para um arquivo que vai receber a resposta da saida padrão e outra que vai criar um arquivo que vai receber a resposta da saida de erro)
Agora digito:
cat saidafind
cat errofind
find /sys &>tudofind (Neste caso tudo da saida 1 ou 2 para tudofind)
cat tudofind

 

 

PARA DIRECIONAR A SAIDA EM Y ESCREVO:

 

ls > saida-ls
cat saida-ls
ls sssss > saida-ls
cat saida-ls
ls sssss > saida-ls 2>&1 (Neste caso manda tudo para o arquivo saida-ls)
ls sssss > saida-ls 1>&2
ls > saida-ls 1>&2
ls > saida-ls 2> saidalserro 1>&2
cat saidalserro
ls &> tudols

 

 

PARA FECHAR UMA DAS SAIDAS. TAPANDO CANOS.

 

ls
ls 1>&- (O menos fecha o saida1/cano1)
ls 1>&- 2>&- (Fecho as duas saídas)
Sobre o &:

O & coloca o comando desejado em background.
TAPAR E JOGAR EM LUGAR NENHUM. MÉTODO UNIX E LINUX.

 

ls > /dev/null
ls ssss >/dev/null
ls ssss > /dev/null 2>/dev/null
Redirecionamento entre processos usando o comando grep. O grep pega a entrada, filtra e só joga no terminal o que combina com o que foi passado. Se digitar grep teste, só será imprimido o que combinar com teste. Para filtrar a saída do ls usando o grep:

 

ls | grep saida
ls | grep erro
Usando o Bash pega-se a saida e conecta-se na entrada com o uso de pipe “|”. O grep filtra expressões regulares e filtra texto. O pipe redireciona a saida padrão 1.
ls |& grep erro
O comando grep significa (Globally Search a Regular Expression and Print). A ideia é procurar texto em uma string ou dentro de arquivos e mostrar linhas, ocorrências, usar combinações para pesquisar e o resultado da pesquisa ser mostrado na tela. O comando grep já vem instalado no Linux. Para confirmar e verificar a versão uso os comandos grep e grep com o PARÂMETRO -V. Exemplos abaixo:
~ $ grep
Uso: grep [OPÇÃO]… PADRÃO [ARQUIVO]…
Experimente “grep –help” para mais informações.
~ $ grep -V
grep (GNU grep) 3.0
Copyright (C) 2017 Free Software Foundation, Inc.
Licença GPLv3+: GNU GPL versão 3 ou superior <http://gnu.org/licenses/gpl.html&gt;.
Este é um software livre: você é livre para alterá-lo e redistribuí-lo.
NÃO HÁ GARANTIAS, na máxima extensão permitida por lei.

 

Escrito por Mike Haertel e outros, veja <http://git.sv.gnu.org/cgit/grep.git/tree/AUTHORS&gt;.

 

 

PARÂMETROS PARA O COMANDO GREP QUE IREI UTILIZAR E SUAS FUNÇÕES:
-c  Conta quantas vezes apareceu a string que esta pesquisando

-v  Mostra na tela “tudo” menos onde houver a ocorrência da string pesquisada

-i  Realiza uma busca pela string ignorando o case, sendo case-insensitive

-o  Ira mostrar na tela apenas as ocorrências da string pesquisada ignorando o resto

-n  Ira mostrar na tela na primeira coluna a linha onde encontrou a string pesquisada

-B  Numero de linhas a serem impressas antes da linha que contem a string pesquisada [BEFORE]

-A  Numero de linhas a serem impressas na tela depois da encontrar a linha com a string [AFTER]

-C  Quantidade de linhas antes e depois da linha que contem a string [CONTEXT]

-q  Ira procurar pela string informada, porém estará em modo silencioso, nada sera impresso na tela, porém caso encontre o comando encerra com 0, caso não encontre nada será 1

-E  Extende o uso de Regex no padrão e combinação, usando logica AND e OR por exemplo

-f  Um arquivo com combinações de padrões com Regex, podendo usar varias combinações

-l  Mostra somente o nome do arquivo onde foi encontrado a string pesquisada

-L  Semelhante ao -v, porque mostra apenas os arquivo que não contem a string informada

-h  Pesquisa varias arquivos, diretórios se com -r mas não mostra o nome dos arquivos

-r  Ira realizar uma pesquisa recursiva em todos os diretórios a partir do informado

–color  Deve-se passar o parâmetro ‘never’ caso não queira que a saída marque com cor a string ou ‘auto’ e ‘always’ para operar conforme necessite. Pode mudar a cor alterando GREP_COLOR, GREP_COLORS no environment

 

 

Vou criar um arquivo chamado palavras.txt e inserir um texto dentro e brincar com o grep.

 

Para fazer isto, uso o comando echo seguido dos parâmetros -ne.

.

As palavra que estarão no texto devem ser abraçadas por aspas ” no início e no fim. Cada linha do texto que é separada por \n e cada palavra é separada por espaços e o texto em si é escrito como se eu fosse escrever um texto normal. Para direcionar este texto entre aspas “texto” devo usar o simbolo menor que > seguido do nome do arquivo a ser criado seguido da extenção no caso aqui .txt. Veja o exemplo abaixo:
~ $ echo -ne “Esta é a primeira linha.\nEsta é a segunda linha.\nEsta é a terceira linha.\n:) E assim por diante…\n” > texto-teste.txt
Para ver o que está escrito digito cat texto-teste.txt. Resultado:

~ $ cat texto-teste.txt
Esta é a primeira linha.
Esta é a segunda linha.
Esta é a terceira linha.
🙂 E assim por diante…
Outro exemplo:
~ $ echo -ne “A primeira linha vai acabar agora. \nA segunda linha começa agora e já terminou. \nEsta é a terceira linha que agora acabou. \nPor fim, a quarta linha é mesmo o fim. \n” > texto4.txt
~ $ cat texto4.txt
A primeira linha vai acabar agora.
A primeira linha começa agora e já terminou.
Esta é a terceira linha que agora acabou.
Por fim, a quarta linha é mesmo o fim.
~ $ echo -ne ‘A “primeira” linha vai acabar agora. \nA “segunda” linha começa agora e já terminou. \nEsta é a “terceira” linha que agora acabou. \nPor fim, a “quarta” linha é mesmo o fim. \n’ > texto4.txt
~ $ cat texto4.txt
A “primeira” linha vai acabar agora.
A “segunda” linha começa agora e já terminou.
Esta é a “terceira” linha que agora acabou.
Por fim, a “quarta” linha é mesmo o fim.
VOU FAZER OUTRO TEXTO:
~ $ echo -ne “rumor\nasa casa\nCasa Asa\nCASA ASA\nRaspberryPI asa casa\nRaspberry PI Casa Asa Nasa\nRaspberry B PI CASA ASA NASA\nArduino Casa Asa Nasa\narduino\nARDUINO\nIDEArduino\nLinux, conhecimento é poder\nEu não programo Python e você?\n” > palavras.txt

 

Para eu visualizar o arquivo palavras.txt no terminal eu vou usar o comando cat seguido do nome completo do arquivo. Exemplo abaixo:
~ $ cat palavras.txt
rumor
asa casa
Casa Asa
CASA ASA
RaspberryPI asa casa
Raspberry PI Casa Asa Nasa
Raspberry B PI CASA ASA NASA
Arduino Casa Asa Nasa
arduino
ARDUINO
IDEArduino
Linux, conhecimento é poder
Eu não programo Python e você?
VOU USAR O GREP E PESQUISAR PELA STRING “Raspberry“, POSSO USAR DE DUAS MANEIRAS COM O cat UM PIPE “|” E LOGO EM SEGUIDA UM grep OU DIRETAMENTE COM O COMANDO, A PRIMEIRA OPÇÃO É MUITO UTILIZADA, PORÉM PERDE PERFORMANCE NO CASO DE REALIZAR PESQUISA EM MUITOS ARQUIVOS OU EM UM ARQUIVO LONGO.

 

$ cat palavras.txt | grep “Raspberry”
RaspberryPI asa casa
Raspberry PI Casa Asa Nasa
Raspberry B PI CASA ASA NASA
$ grep “Raspberry” palavras.txt
RaspberryPI asa casa
Raspberry PI Casa Asa Nasa
Raspberry B PI CASA ASA NASA

 

CASO EU QUEIRA CONTAR O NUMERO DE OCORRÊNCIAS DA STRING “Raspberry”:
$ grep -c “Raspberry” palavras.txt
3

 

 

SE EU QUISER VER TUDO MENOS AS STRINGS QUE CONTENHAM “Raspberry”:
$ grep -v “Raspberry” palavras.txt
rumor
asa casa
Casa Asa
CASA ASA
Arduino Casa Asa Nasa
arduino
ARDUINO
IDEArduino
Linux, conhecimento é poder
Eu não programo Python e você?
AGORA QUERO PESQUISAR PELA STRING “arduino”.
$ grep “arduino” palavras.txt
arduino

 

Temos Arduino escrito de diversas maneiras, então vamos pedir para ser case-insensitive.
~ $ grep -i “arduino” palavras.txt
Arduino Casa Asa Nasa
arduino
ARDUINO
IDEArduino
E SE NO LUGAR DE MOSTRAR A LINHA INTEIRA OU O QUE ESTIVER JUNTO EU MOSTRAR APENAS A STRING PROCURADA? VOU USAR OS PARÂMETROS -o, -oi.

~ $ grep -o “arduino” palavras.txt
arduino
~ $ grep -oi “arduino” palavras.txt
Arduino
arduino
ARDUINO
Arduino

 

~ $ grep -oi “Raspberry” palavras.txt
Raspberry
Raspberry
Raspberry

 

 

SE EU PRECISAR SABER O NUMERO DA LINHA ONDE FOI ENCONTRADA A STRING.
~ $ grep -n “Raspberry” palavras.txt
5:RaspberryPI asa casa
6:Raspberry PI Casa Asa Nasa
7:Raspberry B PI CASA ASA NASA
AGORA VOU PESQUISAR PELA STRING “arduino” E OBTER TAMBÉM AS 2 LINHAS ANTES DA STRING ENCONTRADA.

 

~ $ grep “arduino” -B 2 palavras.txt
Raspberry B PI CASA ASA NASA
Arduino Casa Asa Nasa
arduino
O MESMO PODEMOS FAZER OBTÉM AS LINHAS DEPOIS DA LINHA COM A STRING PESQUISADA.

 

$ grep “arduino” -A 2 palavras.txt
arduino
ARDUINO
IDEArduino

 

E PODEMOS UNIR AS DUAS OPÇÕES, PEGANDO E IMPRIMINDO LINHAS ANTES E DEPOIS DA LINHA QUE CONTEM A STRING PESQUISADA.

 

~ $ grep “arduino” -C 2 palavras.txt
Raspberry B PI CASA ASA NASA
Arduino Casa Asa Nasa
arduino
ARDUINO
IDEArduino

 

CASO NÃO QUEIRA MOSTRAR NADA NA TELA, SÓ SABER SE TEVE SUCESSO OU NÃO NA PESQUISA.

 

~ $ grep -q “arduino” palavras.txt
~ $ echo $?
0
~ $ grep -q “Beaglebone” palavras.txt
~ $ echo $?
1

 

 

DESTA VEZ VOU CRIAR MAIS 2 ARQUIVOS sistema.txt E hardware.txt, E TAMBÉM COPIAR A SAÍDA DO dmesg PARA dmesg.log E BRINCAR COM ESTES CARAS.

 

$ echo -ne “Linux Solus Manjaro Lubuntu Ubuntu\nLinux Devuan Debian\nLinux Solus Project Mint\nLinux Solus Manjaro Debian Devuan CentOS\nRaspbian\nYocto RaspberryPI\nBuildroot RaspberryPI\n” > sistema.txt
$ echo -ne “ARM 1176JZF\nARM Cortex-A7\nBCM2835\nBCM2836\nBeaglebone Black\nAM3358\n” > hardware.txt
$ dmesg > dmesg.log

 

 

POSSO AGREGAR MAIS PALAVRAS PARA REALIZAR MEUS TESTES.
AGORA EU QUERO PESQUISAR EM QUALQUER ARQUIVO E QUE CONTENHA A STRING “Raspberry”.

 

~ $ grep “Raspberry” *
palavras.txt:RaspberryPI
palavras.txt:Raspberry PI
palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

~ $ grep “Raspberry” ./*
./palavras.txt:RaspberryPI
./palavras.txt:Raspberry PI
./palavras.txt:Raspberry B PI
./sistema.txt:Yocto RaspberryPI
./sistema.txt:Buildroot RaspberryPI
OS DEMAIS PARÂMETROS ANTERIORES SE APLICAM AQUI TAMBÉM.

$ grep -n “Raspberry” *
palavras.txt:5:RaspberryPI
palavras.txt:6:Raspberry PI
palavras.txt:7:Raspberry B PI
sistema.txt:6:Yocto RaspberryPI
sistema.txt:7:Buildroot RaspberryPI
SE EU CRIAR UM DIRETÓRIO exemplo/ E MOVER O palavras.txt PARA ELE SERÁ QUE VAI ENCONTRAR A STRING “Raspberry” NELE AINDA?

 

$ mkdir exemplo && mv palavras.txt exemplo/

 

$ grep “Raspberry” *
grep: exemplo: Is a directory
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

ELE AVISA QUE EXISTE UM DIRETÓRIO ONDE ESTA SENDO FEITA A PESQUISA, PARA QUE ELE ACESSE O(S) DIRETÓRIO(S) DEVE-SE PASSAR O PARÂMETRO -r PARA RECURSIVIDADE.

 

$ grep -r “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI
AS VEZES SÓ INTERESSA SABER A OCORRÊNCIAS MAS NÃO O ARQUIVO.

 

$ grep -hr “Raspberry” *
RaspberryPI
Raspberry PI
Raspberry B PI
Yocto RaspberryPI
Buildroot RaspberryPI
CASO QUEIRA APENAS SABER QUAL ARQUIVO CONTEM A STRING MAS NÃO PRECISA MOSTRAR ELA.
$ grep -lr “Raspberry” *
exemplo/palavras.txt
sistema.txt

 

SE QUISER SABER OS ARQUIVOS QUE NÃO POSSUEM A STRING PESQUISADA.
$ grep -Lr “Raspberry” *
dmesg.log
hardware.txt
HABILITANDO OU NÃO O USO DA SAÍDA COLORIDA.

 

$ grep -r –color=always “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

$ grep -r –color=never “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

O COMANDO cd SERVE PARA ACESSAR/NAVEGAR ENTRE DIRETÓRIOS. DIGITO:
user@pc ~$ cd nome_da_pasta

 

user@pc ~$ cd .. # para sair de diretório, note que os dois pontos estão separados do comando.
user@pc ~$ ls # lista aquivos ou pastas de um determinado diretório. O ls pode ser usado com opções -a, -A, –author, -b, –block-size, -B, -c, -C, -d, -f, -F, -G, -h e outros…
O diretório indicado para instalar programas opcionais é o diretório /opt.
user@pc ~$ lsusb # lista os periféricos que estão conectados na porta usb.
user@pc ~$ mkdir # cria uma pasta.
user@pc ~$ rmdir # remove um diretório/pasta vazia.
user@pc ~$ cat # concatena arquivos e imprime na saída padrão (exibe na tela). Em arquivos, usao o cat para listar o conteúdo deles na tela. Com o uso de argumentos, podsso usá-lo para unir diferentes arquivos em um só, dentre outra funções. É prática comum utilizar isso para juntar arquivos de vídeo grandes, como filmes, que muitas vezes são divididos em várias partes. Para unir video1.mpeg a video2.mpeg emvideo.mpeg que estão em /home/user usaria o comando abaixo:

 

user@pc ~$ cat video1.mpeg video2.mpeg > video.mpeg
user@pc ~$ touch # O comando touch é usado atualizar as informações sobre as datas de último acesso e última modificação de um arquivo. Se o arquivo não existir, ele é criado, por padrão. Isso faz o touch ser muito utilizado para criar arquivos vazios, através do comando touch [arquivo]. -a modifica apenas a data do último acesso;
-c, Não cria arquivos, caso eles não existam;
-m, Modifica apenas a data de modificação;
-t, A data e hora a ser utilizada para o último acesso ou última modificação. O formato utilizado é MMDDhhmm (mês, dia, hora e minuto)

 

Se eu quiser criar um arquivo chamado sinai.txt usando o comando touch. Faço assim:
touch sinai.txt
Se quiser criar vários arquivos de uma vez só:
touch sina bina pena borda perl

 

Depois digito:
ls
user@pc ~$ sudo # o comando sudo é um dos mais utilizados, faz requerimento de superusuário. Requer senha.
user@pc ~$ sudo su # após digitar a senha todas as funções realizadas no terminal estará sendo feita como superusuário, prática não muito recomendada.
user@pc ~$ top # exibe todos os processos que estão sendo executados, utilizando para “matar” um processo que está “travado”.
user@pc ~$ ps # assim como o top também lista os processos que estão sendo executados, porém para “matar” o processo necessita pegar o número do PID e utili class=”rol-comandos”zar o comando kill.
user@pc ~$ kill # comando para “mata” um processo travado por meio do PID que pode ser adquirido por meio do comando ps
user@pc ~$ cp # comando para copiar um arquivo ou diretório para um outro local, com o mesmo nome ou com nome diferente.
user@pc ~$ mv # comando para mover ou renomear um arquivo ou diretório para um outro local
user@pc ~$ rm # O rm é utilizado para excluir arquivos.
user@pc ~$ rm -f # remove forçado
user@pc ~$ rm -rf # Exclui recursivamente todo o conteúdo do diretório e o próprio diretório. Quando quiser excluir um diretório que não está vazio, utilize esse parâmetro.
user@pc ~$ ln # Esse é o comando utilizado para criar links, simbólicos ou absolutos.
user@pc ~$ cmp # Esse comando é utilizado para comparar dois arquivos e mostrar a primeira diferença entre eles. Use para certificar-se de que dois arquivos possuem ou não o mesmo conteúdo.
user@pc ~$ diff # Esse comando compara dois arquivos de texto e mostra as diferenças entre eles.
user@pc ~$ patch # Utilizamos esse comando para atualizar as diferenças geradas através do comando diff.
user@pc ~$ grep # O grep é utilizado para encontrar padrões em arquivos de texto, ou, em outras palavras, procura num arquivo todas as linhas que possuem a palavra ou expressão informada e as exibe na tela.

 

user@pc ~$ cut # O cut é utilizado para selecionar colunas de texto em um arquivo.
user@pc ~$ head # Usamos esse comando para exibir as linhas iniciais de um arquivo.
user@pc ~$ more # Usamos esse comando para realizar a paginação de arquivos de texto cujo conteúdo não cabe na tela.
user@pc ~$ less # O less tem a mesma utilidade do more, com a vantagem de poder rolar o texto exibido para cima e para baixo através do uso dos direcionais, além de contar com um localizador de texto.
user@pc ~$ sort # Usamos esse comando para classificar as linhas de um arquivo de texto.
user@pc ~$ tail # Esse comando é utilizando para mostrar as últimas linhas de um arquivo de texto.
user@pc ~$ wc # Conta o número de linhas, palavras, caracteres e bytes nos arquivos.
user@pc ~$ find # O find (procurar, em inglês) é uma ferramenta que utilizamos para localizar arquivos ou diretórios no sistema de arquivos.
user@pc ~$ whereis # Localiza o executável, arquivo/diretório de configuração, diretórios de bibliotecas, arquivos compartilhados, código-fonte e caminho da página de manual do programa especificado.
user@pc ~$ which # Exibe o caminho completo para o comando selecionado.
user@pc ~$ fuser # Esse programa é utilizado para descobrir quais processos estão utilizando determinados arquivos ou soquetes.
user@pc ~$ df # Mostra o espaço utilizado de cada partição.
user@pc ~$ du # Esse comando, sigla de disk usage (uso de disco), é usado para estimar o espaço em disco usado pelos arquivos. Em outras palavras, usamos o du para saber o tamanho dos arquivos.
user@pc ~$ free # Comando muito utilizado para análise do desempenho do sistema, o free exibe informações sobre o uso de memória pelo computador.
user@pc ~$ time # Esse é um comando muito útil para medir o desempenho do sistema. Com o time podemos medir o tempo, em segundos, necessários para executar um processo ou programa.
user@pc ~$ uptime # Mostra o período em que o sistema permaneceu em processamento desde que foi ligado.
user@pc ~$ dmesg # Esse comando é utilizado para ver as mensagens de inicialização do sistema. Útil para analisar eventuais mensagens de erro exibidas devido a qualquer problema que esteja ocorrendo durante a inicialização. Como as mensagens são muito extensas, utilize o more ou o less para visualizar as informações:

 

user@pc ~$ dmesg | more

user@pc ~$ dmesg | less
user@pc ~$ echo # Exibe mensagens na tela. Escreve textos em arquivos. Esse comando é utilizado principalmente para a construção de scripts de sistema. Exemplo:

 

~ $ echo “Oi Mundo!”
~ $ echo “Oi Mundo!” && echo “Tchau Mundo!”
~ $ echo “É fácil escrever usando o comando echo” > texto2.txt
~ $ cat texto2.txt

 

~ $ echo “esta é minha segunda linha” >> texto2.txt

 

~ $ cat texto2.txt

 

~ $ echo “esta é minha terceira linha” >> texto2.txt

 

~ $ cat texto2.txt
ECHO usando -e, “, r, e \n

 

~ $ echo -e “Bom, esta é a primeira linha.\r\nEsta é a segunda linha\r\nEsta é a terceira linha!”

 

 

USANDO COMANDO ECHO PARA ESCREVER VÁRIAS LINHAS E CRIAR UM NOVO ARQUIVO DE TEXTO TUDO AO MESMO TEMPO:
~ $ echo -e “O nome do arquivo de texto será texto3.txt e esta é a primeira linha.\r\nEsta é a segunda linha do arquivo texto3.txt.\r\nEsta é a terceira linha do arquivo texto3.txt e ponto final.\r\nDepois eu posso usar o comando grep para ver o que acontece.” > texto3.txt
user@pc ~$ sync # Esse comando é utilizado para gravar os dados armazenados em cache nos locais apropriados. O uso mais comum é para gravar os dados em unidades de disco removível, geralmente disquete.
user@pc ~$ sudo shutdown -r now # Reinicia o computador. Por padrão, somente o root pode executar esse comando.
user@pc ~$ exit # sair do terminal, fechar o terminal
user@pc ~$ shutdown # Desligar o computador
user@pc ~$ shutdown -h now # desligar o computador agora
user@pc ~$ clear # Limpa a tela do terminal
user@pc ~$ history # O comando history (histórico) mostra a lista dos últimos comandos executados pelo usuário corrente. Isso é útil quando há a necessidade de executar um comando extenso, com muitos parâmetros, do qual não consigamos nos lembrar, ou para fazer auditoria.

 

 

Quero saber qual o release estou usando. Digito:

user@pc ~$ lsb_release -a
Quero saber que dia é hoje. Digito no terminal e recebo a a resposta:

user@pc ~$ date
Qui Abr 20 03:56:35 BRT 2017
Quero saber o calendário digito e recebo a resposta:

user@pc ~$ cal
Abril 2017
Do Se Te Qu Qu Se Sá
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
Instalei lm-sensors. Quero saber a temperatura da máquina. Digito sensors e recebo a resposta:

 

user@pc ~$ sensors
acpitz-virtual-0
Adapter: Virtual device
temp1: +48.0°C (crit = +104.0°C)
temp2: +48.0°C (crit = +104.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Physical id 0: +48.0°C (high = +105.0°C, crit = +105.0°C)
Core 0: +48.0°C (high = +105.0°C, crit = +105.0°C)
Core 1: +48.0°C (high = +105.0°C, crit = +105.0°C)
Quero saber o espaço em disco do sistema de arquivos usado por todas as partições. “df -h” digito e recebo a resposta:

user@pc ~$ df -h
Sist. Arq. Tam. Usado Disp. Uso% Montado em
devtmpfs 1,9G 0 1,9G 0% /dev
tmpfs 2,0G 0
Quero saber a quantidade de memória livre e usada no sistema. “free -m” digito e recebo a resposta:

 

user@pc ~$ free -m
total used free shared buff/cache available
Mem: 3930 737 109 274 3083 2675
Swap: 3815 0 3815
Quero saber a arquitetura do computador. digito arch que é igual ao comando uname -m, e recebo a resposta:

user@pc ~$ arch
x86_64

user@pc ~$ uname -m
x86_64
Uso “uname” para exibir informação básica e ”uname -a” para exibir todas as informações.

user@pc ~$ uname
Linux

user@pc ~$ uname -a
Linux rf7E 4.4.0-53-generic #74-Ubuntu SMP Fri Dec 2 15:59:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Quero saber em tempo real informações sobre o meu sistema linux, digito top ou htop:

user@pc ~$ top

user@pc ~$ htop
Comandos interativos mais importantes do ”top”.

”k” – Finaliza, ou seja, “mata” um processo.

”m” – Ativa/Desativa a exibição de informações da memória.

”M” – Ordena os processos pelo uso da memória residente.

”N” – Ordena os processos pelos seus PIDs.

”P” – Ordena os processos pelo uso da CPU (este é o padrão).

”ESPAÇO” – Atualiza imediatamente a visualização do quadro de processos.

”h” – Exibe a ajuda dos comandos interativos do ”top”.

”q” – Abandona o comando ”top”.
Quero saber um quadro atual, porém estático dos processos que estão sendo executados no sistema. Digito e recebo a resposta:

user@pc ~$ ps
PID TTY TIME CMD
9409 pts/0 00:00:00 bash
12148 pts/0 00:00:00 ps
Se eu quiser matar o processo 9409, digito kill -9 e o número do processo. No caso fecharei o terminal que estou usando.

user@pc ~$ kill -9 9409

Aperto enter.
Quero finalizar processos pelo nome ao invés do PID como faz o comando kill. Uso killall.

Se eu tiver aberto o Firefox e quero fecha ele pelo terminal, se eu digitar no terminal ”killall mozilla-firefox” finalizo processo mozilla-firefox, fechando com isso o navegador web Mozilla Firefox. O nome dos processos ativos pode ser observado com uso do comando ps.

 

Quero verificar o SWAP. Simplificando, pode-se dizer que a memória é de dois tipos: a memória RAM e a SWAP (utilização do disco rígido ou HD). A memória RAM é bastante mais rápida que os HDs, no entanto ela é mais limitada em termos de tamanho. Então o que o Linux faz é utilizar a memória RAM e quando precisar de mais memória utiliza o disco como memória auxiliar. No computador caseiro de 2017, o SWAP pode ser baixo (10).

user@pc ~$ cat /proc/sys/vm/swappiness
10
Vou saber o quanto de memória RAM tenho no computador, que tipo de memória tenho no computador, quando de memória a máquina suporta e muito mais. Digito:

user@pc ~$ sudo dmidecode –type memory

Digito a senha e aperto enter.
Para saber quanto espaço tenho no disco, digito:

user@pc ~$ sudo fdisk -l

Aperto enter.
Quero criar uma pasta chamada dia na pasta Documentos e dentro desta pasta 3 arquivos chamados de azul, verde e roxo tudo pelo terminal. Passo a passo, eu faço assim:

user@pc ~$ pwd
/home/user

user@pc ~$ ls
‘Área de trabalho’ Downloads Música
‘Biblioteca do calibre’ Imagens Público
Documentos Modelos Vídeos

 

user@pc ~$ cd Downloads

 

user@pc/Downloads ~$

 

user@pc/Downloads ~$ pwd
/home/user/Downloads

 

user@pc/Downloads ~$ ls

 

user@pc/Downloads ~$ mkdir dia

 

user@pc/Downloads ~$ ls
dia

 

user@pc/Downloads ~$ cd dia

 

user@pc ~/Downloads/dia $
VARIÁVEIS
O que são variáveis? São como gavetas. Gaveta é um compartimento que guarda determinado tipo de conteúdo. Quando abro uma gaveta vejo o que tem dentro desta gaveta. Num armário com muitas gavetas, eu dou nome para cada gaveta. No computador as gavetas possuem dados em bit. Cada letra é um bit. A etiqueta de cada gaveta será o nome da variável. Cada um dos caracteres do teclado cada um é um bit. Como manusear ou criar uma variável no Bash? Sempre tento usar nomes maiúsculos para etiquetar as variáveis.

.

VARIÁVEIS

 

O que são variáveis? São como gavetas. Gaveta é um compartimento que guarda determinado tipo de conteúdo. Quando abro uma gaveta vejo o que tem dentro desta gaveta. Num armário com muitas gavetas, eu dou nome para cada gaveta. No computador as gavetas possuem dados em bit. Cada letra é um bit. A etiqueta de cada gaveta será o nome da variável. Cada um dos caracteres do teclado cada um é um bit. Dentro de uma variável com um nome. Dentro dela tem bits. Como manusear ou criar uma variável no Bash? Sempre tento usar nomes maiúsculos. O nome da variável é igual ao conteúdo.
.

 

Criando uma variável chamado CASA:

 

~$ CASA=tijolo

.
Para ler a variável uso echo, o cifrão “$” e o nome da variável.

.
~ $ echo $CASA
tijolo

.

~ $ CASA=tijolos-ferro-areia-cimento-granito-cascalho

 

~ $ echo $CASA
tijolos-ferro-areia-cimento-granito-cascalho

.

~ $ CASA=”tijolo cimento dinheiro projeto e sonhos”

~ $ echo $CASA
tijolo cimento dinheiro projeto e sonhos

.

~$ ls

~$ ls -t

~$ ls -lah

~$ pwd

.

~$ echo sem o $ ou sem aspas e comando destrutivo, imprime direto na tela do terminal viu?

~$ clear

~ $ CASA=formigas

~ $ echo $CASA
formigas

.

~ $ CASAESPACOS=”sala cozinha banheiro quarto varanda”

~ $ echo $CASAESPACOS
sala cozinha banheiro quarto varanda

.

Existem vária variáveis criadas automaticamente quando entro no terminal e mudam o comportamento do terminal e dos programas.

O comando abaixo serve para ver várias variáveis que já existem para ver elas usa-se o comando abaixo:

~$ ( }et -o posix ; set )

 

.

 

VARIÁVEIS DE AMBIENTE. PARA QUE SERVEM?

 

Servem para mudar o comportamento durante a execução dos comandos. Podem por exemplo mudar a lingua que está rodando o programa. Variáveis Bash alguma coisa mudam o comportamento do Bash ou dos programas. Existem variáveis de ambiente, por exemplo e para listar, saiba que tem as do Bash e as de ambiente. As do Bash só alteram o Bash. Os comandos de ambiente herdam as variáveis. LANG é uma variável de ambiente. Para listar as variáveis promovidas a variáveis de ambiente:

~$ env

 

~ $ echo $LANG
pt_BR.utf8

 

.

COMO PROMOVER VARIÁVEIS?

De local para de ambiente usa-se “export”

~$ export

~$ export CASA

Posso criar variáveis novas.

~$ export NOVAVARIAVEL=”llllllllll”

.

VOU PROCURAR AS VARIÁVEIS:

 

~$ env

 

.

 

PARA ACHAR FÁCIL USO O GREP.

 

~$ env | grep CASA

 

~$ env | grep CASAESPACOS

 

~$ env | grep NOVAVARIAVEL

 

~$ env | grep SOLUS

 

.

 

Algumas variaveis alteram o comportamento dos programas.

PARA MUDAR A VARIAVEL LANG PARA INGLES? SOBREESCREVO A VARIAVEL LANG.

 

~$ echo $LANG
pt_BR.utf8

 

~ $ ls dr2ttttttttt
ls: não foi possível acessar ‘dr2ttttttttt’: Arquivo ou diretório não encontrado

 

~$ export LANG=C

 

~$ echo $LANG
C

 

~$ env | grep LANG
LANG=C

 

~$ ls h7jjjjjj
ls: cannot access ‘h7jjjjjj’: No such file or directory

.

 

Para voltar a falar português:

 

~$ export LANG=pt_BR.utf8

 

~ $ ls ku9sssssssssss
ls: não foi possível acessar ‘ku9sssssssssss’: Arquivo ou diretório não encontrado

.

 

SE EU NÃO QUERO EXPORTAR, NÃO QUERO FAZER VIRAR VARIÁVEL DE AMBIENTE. SÓ QUERO NA EXECUÇÃO DE UM COMANDO ESPECÍFICO ALTERAR UMA VARIAVEL SEM MODIFICAR AS VARIAVEIS DE AMBIENTE. QUERO QUE FALE INGLÊS SOMENTE UMA VEZ E DEPOIS VOLTE A FALAR PORTUGUÊS. DESTA FORMA A VARIAVEL SÓ VAI EXISTIR DENTRO DO PRÓXIMO COMANDO LS E NÃO VAI SER EXPORTADA PARA VARIÁVEL DE AMBIENTE. PARA FAZER ISTO:

 

~ $ LANG=C ls sfrftrbtby
ls: cannot access ‘sfrftrbtby’: No such file or directory

 

~ $ ls sfrftrbtby
ls: não foi possível acessar ‘sfrftrbtby’: Arquivo ou diretório não encontrado

.

AS VARIÁVEIS ALTERADAS SÓ VALEM PARA O TERMINAL QUE ESTOU TRABALHANDO. SE EU ABRIR OUTRO TERMINAL AS VARIÁVEIS NÃO IRÃO VALER.

.

O Bash herda as variáveis para se autoconfigurar em /etc/bash.bashrc e ~/.bashrc. O .bashrc fica no diretório do usuário. No .bashrc posso colocar scripts meus.

 

.

 

VARIAVEIS ESPECIAIS OU DINAMICAS

 

Posso criar variaveis. O Bash tem variáveis especiais também. Variaveis dinamicas que enquanto está executando modifica o conteudo das gavetas. Modifica o conteúdas variáveis. Executa em outra instancia do Bash. É muito útil em shell scripts.

 

~ $ echo $(ls)
Área de trabalho Documentos Downloads Imagens Modelos Música Público Vídeos

 

~ $ echo 1+1
1+1

 

~ $ echo $((1+1))
2

 

~ $ echo 7*9
7*9

 

~ $ echo $((7*9))
63

 

 

.

 

EXPANSÃO – Algo pequeno transformado em algo maior.

Bash varre a linha de comando e substitui. Tenta encontrar padrões transformando em outra coisa. Como arquivos e diretórios. O shell expande as coisas que tem caracteres especiais (variáveis). Exemplo abaixo:

.

[1-9]

{1,2,3}

?

~

—————-
Executo:

 

~ $ echo ~
/home/sol

 

.

Asterisco “*” substitui todos os arquivos e diretorios do diretorio atual. Asterisco significa “qualquer coisa”.

 

~ $ echo *
Área de trabalho Documentos Downloads Imagens Modelos Música Público Vídeos

 

* pode ser usado para outras coisas.

 

~ $ echo erro*
erro*

 

~ $ ls saida*
ls: não foi possível acessar ‘saida*’: Arquivo ou diretório não encontrado

 

.

Vou criar alguns arquivos.

 

~ $ touch texte1plah texte2plah texte123plah

 

~ $ ls

‘Área de trabalho’ Downloads Modelos Público texte1plah Vídeos

Documentos Imagens Música texte123plah texte2plah

 

.

Agora vou procurar (o asterisco também significa nada ou qualquer coisa):

 

~ $ echo *[1-3]*

texte123plah texte1plah texte2plah

 

.

 

~ $ echo *{2,3}*

texte123plah texte2plah texte123plah

 

.

 

É MUITO ÚTIL QUANDO SE ESTÁ PROCURANDO POR UM ARQUIVO[S] ESPECÍFICO[S]. ESTES COMANDO SE CHAMAM WILDCARDS OU CORINGAS. REPRESENTAÇÕES QUE PODEM COMBINAR COM DETERMINADOS CARACTERES.

 

.

 

~ $ echo texte?plah

texte1plah texte2plah

 

.

 

Posso combinar todos eles. Posso combinar todos os wildcards (coringas).

 

.

 

~ $ echo *saida??*

*saida??*

 

.

 

Quero que efetivamente não seja expandido o ~ escapando caracteres. Quero que imprima o ~. Uso barra invertida \ antes do caracter que eu quero que não expanda.

.

~ $ echo \~

~

 

.

 

~ $ echo ~

/home/user

 

.

 

~ $ echo $CASA

tijolo cimento dinheiro projeto e sonhos

 

.

 

~ $ echo \$CASA

$CASA

 

.

 

~$ clear

 

.

 

Isto serve para todos os wildcards.

 

.

 

~ $ echo \$((1+8))

bash: erro de sintaxe próximo do `token’ não esperado `(‘

 

.

Não funcionou.

 

.

 

~ $ echo \$\(\(1+8\)\)

$((1+8))

.

Crio um arquivo com o comando touch:

 

touch texto-teste.txt

 

 

Verifico se está criado com:

 

ls -t

 

 

Crio uma pasta com o comando mkdir:

 

mkdir texto-teste

 

 

Verifico se está criado com:

 

ls -t

 

 

Copio o arquivo texto-teste.txt para a pasta texto-teste. Tem a ver com os comandos cp e o comando mv.

 

 

cp texto-teste.txt texto-teste

 

 

Comando cp copia arquivos ou diretórios para outro local. Se o destino fornecido for o nome de um diretório existente, os arquivos serão copiados para esse diretório, com o mesmo nome. Caso indiquemos um nome de arquivo no caminho de destino, o arquivo de origem será copiado e essa cópia renomeada também.

.

Opções mais comuns:

.

-i, –interactive

Pergunta se desejamos sobrescrever um arquivo de destino já existente.

.

-l, –link

Cria hard links para os arquivos em vez de copiá-los.

.

-n, –no-clobber

Não sobrescrever um arquivo já existente

.

-p

Preserva as permissões originais do arquivo, incluindo proprietário, grupo, stuid, setgid, tempos da última modificação e acesso.

.

-r, -R, –recursive

Copia diretórios de forma recursiva.

 

-s, –symbolic-link

Cria links simbólicos (symlinks) para os arquivos em vez de copiá-los

.

-u, –update

Copia apenas quando os arquivos de origem forem mais novos que os de destino, ou quando os arquivos de destino estiverem faltando.

.

-v, –verbose

Modo verboso; explica o que está sendo feito no momento.

.

–help

Mostra a ajuda básica do comando e sai.

.

–version

Mostra informações sobre a versão do comando e sai.

.

Exemplos:

.

1. Copiar o arquivo passwd do diretório /etcpara o diretório /home/fabio/.

$ cp /etc/passwd /home/user/

 

Se o diretório de trabalho atual já for o /home/user, podemos também usar o ponto (.) para indicá-lo como local de destino, como a seguir:

.

$ cp /etc/passwd .

 

 

—————————–

 

 

Removo o arquivo texto-teste:

 

rm texto-teste.txt

 

 

Removo a pasta texto-teste de forma recursiva com rm -r, se quiser forçar a remoção uso rm -rf (nunca uso o comando [rm -rf/] pois destrói o meu sistema). Comando abaixo remove a pasta texto-teste:

 

 

rm -r texto-teste

.

 

Verifico:

.

 

ls -t

 

—————————

 

COMANDO MV – O COMANDO MV PODE SER USADO PARA MOVER OU RENOMEAR ARQUIVOS.

 

.

Sintaxe:

mv [opções] arquivos_origem local_destino

 

.

Opções principais:

.

-b, –backup

Cria um backup de cada arquivo de destino existente.

.

-f, –force

Apaga destinos existentes sem perguntar ao usuário.

.

-i, –interactive

Pergunta se desejamos sobrescrever um arquivo de destino já existente.

.

-n, –no-clobber

Não sobrescrever um arquivo já existente

.

-u, –update

Move apenas quando os arquivos de origem forem mais novos que os de destino, ou quando os arquivos de destino estiverem faltando.

.

-v, –verbose

Modo verboso; explica o que está sendo feito no momento.

.

–help

Mostra a ajuda básica do comando e sai.

.

–version

Mostra informações sobre a versão do comando e sai.

.

Exemplos:

1. Mover o arquivo passwd do diretório atual para o subdiretório Documentos:

$ mv passwd ./Documentos/

.

2. Mover o arquivo passwd do diretório atual para o subdiretório Documentos, o qual já contém um arquivo com o mesmo nome – nesse caso, queremos fazer um backup do arquivo de destino:

$ mv –backup passwd ./Documentos/

Neste caso o arquivo de backup criado tem o caractere ~ (til) no final de seu nome.

.

3. Renomear o arquivo curriculum.odt para curriculum.txt:

$ mv curriculum.odt curriculum.txt

.

Vejo que não indiquei um destino diferente – mandei mover o arquivo para o próprio local de origem, apenas trocando seu nome

 

 

—————————

 

 

USANDO O COMANDO MV

.

 

Crio um arquivo com o comando touch:

 

touch texto-teste2.txt

 

.

 

Verifico se está criado com:

 

ls -t

 

.

 

Crio uma pasta com o comando mkdir:

 

mkdir texto-teste2

 

 

Verifico se está criado com:

 

ls -t

 

.

 

Copio o arquivo texto-teste.txt para a pasta texto-teste. Tem a ver com os comandos cp e o comando mv.

 

.

 

mv texto-teste2.txt texto-teste2

 

Verifico com:

.

 

ls -t

 

Vou para a pasta texto-teste2 com o comando cd:

.

 

cd texto-teste2

 

.

Verifico:

 

ls -t

 

.

Removo o arquivo texto-teste:

 

rm texto-teste.txt

 

.

Saio da pasta texto-teste:

 

cd

 

.

Verifico:

 

ls -t

 

.

Removo a pasta texto-teste de forma recursiva com rm -r, se quiser forçar a remoção uso rm -rf (nunca uso o comando [rm -rf/] pois destrói o meu sistema). Comando abaixo remove a pasta texto-teste:

 

 

rm -r texto-teste

.

 

Verifico:

.

 

ls -l

 

ls -t

 

ls -lt

 

ls -lat

 

.

 

SOBRE O COMANDO TOUCH

 

Já conheço. Cria arquivos vazios ou muda a data de alteração de algum arquivo:

 

Já vi e fiz exercícios sobre o touch acima.

 

.

 

O COMANDO LN

.

 

O comando ln é um comando para fazer links. Existe o conceito nos sistemas de arquivos. É o conceito de links. Posso criar um link para um determinado arquivo. Um hardlink. Estes arquivos existem uma vez só.

.

 

touch texto-emails.txt

 

.

 

ln texto-emails.txt texto-emails-link.txt

 

.

 

ls -t

 

.

Os dois ocupam um só espaço no HD ou onde quer que eu esteja salvando este arquivo. Eles são o mesmo arquivo.

 

.

Removo o hardlink:

 

.

 

rm texto-emails-link.txt

 

.

 

LINKS SIMBÓLICOS

.

 

Links simbólicos – uma seta apontando para o arquivo original. É diferente do hardlink. É um apontador para um arquivo.

.

 

Criando um link simbólico, primeiro crio o arquivo:

.

 

touch texto-emails.txt

 

.

 

Verifico:

.

 

ls -l

 

ls -t

 

ls -lt

 

.

 

Para criar o link simbólico uso [-s] e [-link]:

.

 

ln -s texto-emails.txt texto-emails-link.txt

 

.

 

Verifico:

.

 

ls

 

ls -l

 

ls -t

 

ls -lt

 

ls -a

 

ls -la

 

ls -lat

 

ls -lah

 

.

 

Ficou com uma cor diferente. Eu uso o ls para verificar o arquivo escrevendo no terminal:

 

 

ls -la texto-emails-link.txt

 

.

 

Fica mais ou menos assim:

 

.

 

~$ ls -la texto-emails-link.txt

lrwxrwxrwx 1 oso oso 16 Jun 22 10:49 texto-emails-link.txt -> texto-emails.txt

 

.

 

A seta (->) indica que é um link simbólico.

 

.

 

Para remover:

 

rm texto-emails-link.txt

 

.

 

——————————–

 

SOBRE O COMANDO MV:

 

Maneira simples de mover todo o conteúdo de uma pastinha para outra. Os brutos de TI, chamam as pastinhas de arquivos e diretórios. Kkkkkkk.

.

 

Exemplo: tenho a pasta teste1 com vários arquivos e pastas e tenho a pastinha teste2 totalmente vazia e vou copiar o conteúdo de teste1 para teste2

.

 

mv teste1/* /home/usuario/www/teste2

 

.

 

Observação:

.

 

1 – O * vai mover todo o conteúdo de arquivos e lindas e fofas pastinhas existentes no teste1 para teste2.

.

 

2 – onde usuario é o usuário logado no shell.

 

——————————–

 

O COMANDO STAT

.

 

O stat tem a ver com o conteúdo de um inode. Inode area do sistema de arquivos que guarda info sobre o arquivo. Lista o conteudo de um inode. Stat mostra o estado de um arquivo.

 

.

 

Inodes guardam as informações sobre um arquivo no disco. É o número de inodes que limita o número de arquivos que podem ser armazenados em disco.

.

 

Tenho que uma hora destas ler o manual do comando stat (man stat, info stat). Comando stat e o inode.

.

 

Comando rmdir

 

.

 

Comando find

 

Digite:

 

find /usr -name Makefile

 

find -name *.txt

.

 

O bash quando tem * expande, para ESCAPAR usa-se ‘*.txt’ ou \*.txt

.

 

find -name ‘*.txt’

.

 

find -name \*.txt

 

.

Comando -type do comando find

.

 

Se eu quero que o find liste pastas

 

find /usr -type d

.

 

Se eu quero que o find liste arquivos

 

find /usr -type f

.

 

 

 

COMANDOS PARA ADMINISTRAR O SISTEMA – PROCESSAR TEXTO NO TERMINAL

 

uniq -> Le a entrada padrão ou le arquivo removendo linhas duplicadas em sequência. Com o uniq posso remover entradas duplicads que estão em sequência. O uniq consegue ler da entrada padrão.

 

uniq emails.txt

uniq emails.txt > emails-sem-duplicados.txt

cat emails.txt | uniq

 

###

 

tac -> É o inverso de cat ele pega toda entrada padrão, inverte e imprime de baixo para cima.

tac emails.txt

 

###

 

tee -> Pega o que recebe da entrada padrão, copia que nem o cat e tem opção de redirecionar para um arquivo. O tee joga na saida padrão e também direciona para um arquivo. É útil para gravar logs de algum comando que executei mas quero salvar em um arquivo.

 

cat emails.txt | tee saida-tee.txt

 

~$ cat saida-tee.txt
mario@gmail.com mariogomes@gmail.com

 

###

 

cut -> Recorta texto em colunas

 

echo joão@gmail.com,carlos@gmail.com,gomes@gmail.com | cut -d, -f1

echo joão@gmail.com,carlos@gmail.com,gomes@gmail.com | cut -d, -f2

echo joão@gmail.com,carlos@gmail.com,gomes@gmail.com | cut -d, -f3

 

###

 

tail -> Pega a entrada padrão dele e repete as últimas linhas.

 

cat emails.txt | tail

cat emails.txt | tail -n1

cat emails.txt | tail -n2

tail -n 2 emails.txt

 

###

 

head -> Pega a entrada padrão dele e repete as primeiras linhas.

 

head -n 2 emails.txt

 

cat emails.txt | head

 

cat emails.txt | head -n1

 

cat emails.txt | head -n2

 

###

 

more -> Formata arquivo e entrada padrão. Formata de forma paginada. Trabalha tanto com arquivos quanto com entrada padrão.

 

find /usr -type d | more

 

###

 

less -> É a evolução do comando more. Tem mais recursos.

 

find /usr -type d | less

 

Aperto a barra / posso procurar uma palavra é só digitar ela.

 

###

 

Comando wc -> Word count, contador de linhas, caracteres ou palavras

 

find /usr -type d | wc [conta palavras]

 

find /usr -type d | wc -l [conta linhas]

 

###

 

sort -> Ordena o conteúdo que foi recebido na entrada padrão ou por arquivo. Consegue fazer uma funcionalidade do uniq. Consegue filtrar mesmo que as linhas repetidas não estejam em sequência.

 

OBS:
Pesquisar o comando vi.

 

find /usr -type d | sort

.

Agora funcionou

.

NUMA MANUTENÇÃO DE ROTINA USA-SE OS COMANDOS EM MOMENTOS DE MONITORAÇÃO E (OU) URGÊNCIA:

 

ls: Lista todos os arquivos do diretório

df: Mostra a quantidade de espaço usada no disco rígido

top: Mostra o uso da memória

cd: Acessa uma determinada pasta (diretório)

mkdir: Cria um diretório

rm: Remove um arquivo/diretório

cat: Abre um arquivo

vi: Abre o editor vi(lê-se viai) para editar/criar arquivos

.

Minhas anotações param por aqui hoje.

 

 

Até Breve

 

.

Manjaro Deepin – Guia Pós Instalação

Captura de Tela20170522184942

 

2017-JUNHO-MANJARO-DEEPIN-17.0.1-STABLE-X86_64-GUIA-POS-INSTALAÇÃO
.

Link para Download
.

https://manjaro.org/community-editions/
.

https://sourceforge.net/projects/manjarolinux-community/files/deepin/17.0.1/
.

Comando para usar no terminal que verifica o sha1 do manjaro-deepin-17.0.1-stable-x86_64.iso
.

sha1sum manjaro-deepin-17.0.1-stable-x86_64.iso
.

GUIA PÓS-INSTALAÇÃO MANJARO-DEEPIN-17.0.1-STABLE-X86_64
.

Tutorial foi testado em computador físico. Funciona muito bem. Uso por MINHA conta e risco.
.

Este tutorial é destinado a estudantes e entusiastas de distribuições Manjaro/Linux.
.

Dicas e correções são bem-vindas.
.

Eu pesquiso anoto e executo o material publicado. Depois eu chamo de artigo e as vezes, publico as anotações para meu uso
.

Espero que estas anotações sejam úteis a você assim como elas são para mim. O legal de usar anotações, é que eu não sei nada de Linux, mas se eu usar estas anotações no esquema ir lendo e executando o que as anotações informam. Ao fim deste caminho vou ver as coisas mais claramente.
.

Quando eu esquecer alguma coisa, eu posso voltar a ela e relembrar. Tem épocas que as anotações aumentam e outras que diminuem. Esta anotação faz parte do meu processo de aprendizado. Vou registrando o que consigo conhecer através de pesquisa e prática.
.

A partir do momento que conheço e entendo alguma coisa de Linux usando Linux somado as minhas anotações, este conhecimento torna-se meu e naturalmente, tomo posse dele como faria qualquer ser humano.
.

Atualmente, é recomendado instalar todos os aplicativos de modo gráfico usando o aplicativo Pamac. O que percebo, é que usar o comando yaourt pode ser utilizados mas não são fundamentalmente necessários, pois existe o programa para adicionar e remover programas no MANJARO (Pamac)
.

Deste tutorial todos os aplicaticos que usem o comando “pacman -S” ou, “sudo pacman -S (nome-do_programa)” são seguros para eu instalar via terminal
.

Usuário comum não pode fazer alterações no sistema e USUÁRIO ADMINISTRADOR pode
.

SE TORNANDO O ADMINISTRADOR:
.

Abra o terminal com o menu do mouse botão direito
.

Digite: sudo su <enter> , digite sua senha <enter>
.

Estará em modo adminstrador. Em modo administrador eu não uso “sudo”
.

O modo administrador é usado para alterações no sistema e com cuidado para não executar comandos inadequados que podem desestabilizar o MANJARO
.

Neste tutorial caso veja “# sudo” desconsidere o “#” e execute o comando sem ser administrador.
.

O modo não administrador é mais seguro e deve-se usar de preferência apenas o comando pacman. O comando yaourt pode instalar programas potencialmente perigosos, não verificados. É um risco. O usuário que sabe de o que faz, sabe verificar estes programas antes de instala-los
.

Os programas oficiais do MANJARO todos podem ser instalados usando “sudo pacman -S” a atualização completa do sistema pode ser feita pelo terminal usando “sudo pacman -Syyuu”
.

É bom para quem quer aprender, usar todos os comandos deste tutorial, mas em uma máquina destinada a estudo, ou, em uma máquina virtual
.

Não devo estudar os comandos e testar softwares não pertencentes ao repositório oficial na máquina que preciso para minhas atividades diárias importantes
.

“Você pode baixar gratuitamente o sistema operacional MANJARO. Ele vem como um arquivo ISO, o qual precisa ser gravado em um DVD virgem, criando assim um LiveDVD.
.

Este LiveDVD é inicializável e, após colocado em seu computador e inicializado, fornece um sistema operacional totalmente funcional, que você pode experimentar sem afetar o seu PC. Em termos leigos, quando você grava o MANJARO em um DVD e o insere no drive de seu computador, pode então, experimentá-lo, deixando seu sistema atual intacto.
.

Nota: Também é possível gravar a imagem ISO num pendrive ou outro dispositivo de memória e então carregar o sistema operacional a partir dele, além de também ser possível fazê-lo através de uma imagem armazenada no disco rígido. Entretanto, essas opções são um pouco mais avançadas. Para saber mais sobre esses métodos alternativos, por favor assista videos do YOUTUBE.”
.

O arquivo que precisa baixar é um arquivo ISO.
.

Há duas maneiras de fazer o download deste arquivo: por torrent, o qual utiliza o protocolo Peer to Peer, que quer dizer Ponto a Ponto em português, ou através de um espelho de download (protocolo HTTP ou FTP). Uma vez que o download tenha terminado, certifique-se de que o seu arquivo ISO não está corrompido, verificando a sua assinatura com o SHA
.

Via Torrent
O Torrent é um protocolo Peer to Peer (P2P). Basicamente, em vez de baixar a imagem ISO a partir de uma localização central, o torrent realiza o download do arquivo ISO em partes, a partir de diferentes pessoas que estejam conectadas à Internet. Quanto mais pessoas baixarem o arquivo ISO, mais rápida a velocidade de download. Esta é a forma mais usada e recomendada para baixar o MANJARO LINUX. Para baixar os arquivos via torrent é necessário um pequeno software chamado de cliente torrent. Se você estiver utilizando uma outra distribuição Linux, pode instalar o Transmission. Porém, se estiver no Linux Mint, o Transmission já estará instalado. Por fim, se estiver utilizando o Windows, poderá usar o aplicativo μTorrent.

 

ATALHOS DE TECLADO PARA O EMULADOR DE TERMINAL LINUX

.
Atalho Função
.
.
.
Ctrl + a Move o cursor para o início da linha
———————————————
Ctrl + e Move o cursor para o final da linha
———————————————
Ctrl + l Limpa a tela, semelhante ao comando clear
———————————————
Ctrl + u Apaga do cursor ao início da linha.
———————————————
Ctrl + k Apaga do cursor ao final da linha.
———————————————
Ctrl + w Apaga uma palavra antes do cursor.
———————————————
Ctrl + _ Desfaz as últimas mudanças.
———————————————
!! Executa o último comando no histórico.
———————————————
!abc Executa o último comando no histórico começando com abc.
———————————————
!n Executa o comando de número n no histórico.
———————————————
^abc^xyz Substitui a primeira ocorrência de abc por xyz no último comando e executa o mesmo.
———————————————
.

COMO VERIFICAR SE UMA IMAGEM ISO ESTÁ CORROMPIDA OU ADULTERADA?
.

Primeiro de tudo eu vou pesquisar no site do Manjaro. Abro o terminal onde está a imagem ISO do Manjaro. Posso usar:
.

sha1sum nome_completo_da_ISO
.

sha256sum nome_completo_da_ISO
.

Comparo as letras e números se conferem com as letras e números do site oficial
.

MANJARO – DIRETORIOS/PASTAS
/opt – arquivos de instalação
/usr/bin – repositorio de comandos – manipulaçao de arquivos
/usr/sbin – comandos para administração do sistema
/usr/lib – bibliotecas compartilhadas
/usr/share – arquivos de fornecedores independentes
/usr/share/man – manual
/usr/local/bin – armazena programas localmente
/usr/contrib/bin – programas e utilitarios publicos
/sbin – comandos de inicialização e encerramento
/home – diretorios dos usuarios
/etc – arquivos de configurações do sistema
/tmp – rascunho do sistema operacional
/dev – arquivos de hardware
/mnt – montar outros perifericos
/var/mail – caixa de correio
/var/news – mensagens correntes
/var/tmp – rascunho dos usuarios

.

MAIS BEM EXPLICADO:
.

O DIRETÓRIO RAIZ (/)

Todos os arquivos e diretórios do sistema Linux instalado no computador partem de uma única origem: o diretório raiz. Mesmo que estejam armazenados em outros dispositivos físicos, é a partir do diretório raiz – representado pela barra (/) – que você poderá acessá-los.

O único usuário do sistema capaz de criar ou mover arquivos do diretório raiz é o root, ou seja, o usuário-administrador. Isso evita que usuários comuns cometam erros e acabem comprometendo a integridade de todo o sistema de arquivos.
.

BINÁRIOS EXECUTÁVEIS: /BIN
Na pasta /bin estão localizados os binários executáveis que podem ser utilizados por qualquer usuário do sistema. São comandos essenciais, usados para trabalhar com arquivos, textos e alguns recursos básicos de rede, como o cp, mv, ping e grep.
.

BINÁRIOS DO SISTEMA: /SBIN
Como o /bin, este diretório armazena executáveis, mas com diferença que são aplicativos utilizados por administradores de sistema com o propósito de realizar funções de manutenção e outras tarefas semelhantes. Entre os comandos disponíveis estão o ifconfig, para configurar e controlar interfaces de rede TCP/IP, e o fdisk, que permite particionar discos rígidos, por exemplo.
.

PROGRAMAS DIVERSOS: /USR
Se eu não encontrar um comando no diretório /bin ou /sbin, ele está aqui. A pasta /usr reúne executáveis, bibliotecas e até documentação de softwares usados pelos usuários ou administradores do sistema. Além disso, sempre que eu compilar e instalar um programa a partir do código-fonte, ele será instalado nesse diretório.
.

CONFIGURAÇÕES DO SISTEMA: /ETC
No diretório /etc ficam arquivos de configuração que podem ser usados por todos os softwares, além de scripts especiais para iniciar ou interromper módulos e programas diversos. É no /etc que se encontra, por exemplo, o arquivo resolv.conf, com uma relação de servidores DNS que podem ser acessados pelo sistema, com os parâmetros necessários para isso.
.

BIBLIOTECAS: /LIB
Neste ponto do sistema de arquivos ficam localizadas as bibliotecas usadas pelos comandos presentes em /bin e /sbin. Normalmente, os arquivos de bibliotecas começam com os prefixos ld ou lib e possuem “extensão” so.
.

OPCIONAIS: /OPT
Aplicativos adicionais, que não são essenciais para o sistema, terminam neste diretório.
.

AQUIVOS PESSOAIS: /HOME
No diretório /home ficam os arquivos pessoais, como documentos e fotografias, sempre dentro de pastas que levam o nome de cada usuário. Vale notar que o diretório pessoal do administrador não fica no mesmo local, e sim em /root.
.

INICIALIZAÇÃO: /BOOT
Arquivos relacionados à inicialização do sistema, ou seja, o processo de boot do Linux, quando o computador é ligado, ficam em /boot.
.

VOLUMES E MÍDIAS: /MNT E /MEDIA
Para acessar os arquivos de um CD, pendrive ou disco rígido presente em outra máquina da rede, é necessário “montar” esse conteúdo no sistema de arquivos local, isso é, torná-lo acessível como se fosse apenas mais um diretório no sistema.
Em /media ficam montadas todas as mídias removíveis, como dispositivos USB e DVDs de dados. Já o diretório /mnt fica reservado aos administradores que precisam montar temporariamente um sistema de arquivos externo.
.

SERVIÇOS: /SRV
Dados de servidores e serviços em execução no computador ficam armazenados dentro desse diretório.
.

ARQUIVOS DE DISPOSITIVOS: /DEV
No Linux, tudo é apresentado na forma de arquivos. Ao plugar um pendrive no computador, por exemplo, um arquivo será criado dentro do diretório /dev e ele servirá como interface para acessar ou gerenciar o drive USB. Nesse diretório, você encontra caminhos semelhantes para acessar terminais e qualquer dispositivo conectado ao computador, como o mouse e até modems.
.

ARQUIVOS VARIÁVEIS: /VAR
Todo arquivo que aumenta de tamanho ao longo do tempo está no diretório de arquivos variáveis. Um exemplo são os logs do sistema, ou seja, registros em forma de texto de atividades realizadas no Linux, como os logins feitos ao longo dos meses.
.

PROCESSOS DO SISTEMA: /PROC
Tudo funciona como um arquivo no Linux. O /proc é isso. Nele são encontrados arquivos que revelam informações sobre os recursos e processos em execução no sistema. Se quiser saber há quanto tempo o Linux está sendo usado desde a última vez em que foi iniciado, basta ler o arquivo /proc/uptime.
.

ARQUIVOS TEMPORÁRIOS: /TMP
Arquivos e diretórios criados temporariamente tanto pelo sistema quanto por mim deve ficar nesse diretório. Parte deles é apagada quando o computador é reiniciado.

Os nomes dos diretórios indicam o que pode ser encontrado neles e, com o tempo, talvez eu esteja navegando por eles com facilidade.

 

PÓS-INSTALAÇÂO MANJARO
.

Atualizo todo o sistema via terminal usando sudo. É obrigatório
.

sudo pacman -Syyuu
.

Digito a senha que é invisivel, acontece entre o teclado e o terminal, e aperto <enter>
.

Executo o comando abaixo:
.

sudo pacman -S yaourt ; sudo pacman -Sy ; sudo pacman -S packer ; sudo pacman -Syu ; sudo pacman -Syy ; sudo pacman -Syyuu
.

Fecho todos os programas que estejam abertos
.

Faço reboot do sistema com o comando abaixo e volto a este tutorial:
.

sudo shutdown -r now
.

Aperto enter
.

EDITORES DE TEXTO SERVEM NÃO APENAS PARA ESCREVER MENSAGENS, RESUMOS, HISTÓRIAS. SERVEM TAMBÉM PARA COMPILAR ASSIM COMO, ESCREVER PROGRAMAS
.

Instalo editores de texto
.

sudo pacman -S leafpad gedit mousepad –noconfirm ; pacman -Sy
.

Instalo o comando yaourt com:
.

sudo pacman -S yaourt ; sudo pacman -Syyuu ; yaourt -Syyuua
.

SUGESTÃO
.

Linha de comando para update, upgrade e limpeza. Recomendado para o fim da pós-instalação depois de dar reboot.
.

Responda as perguntas do terminal sempre com sim (S) ou yes (Y). Copie e cole abaixo mas, não use # , pode começar o comando com o terminal em $.
.

yaourt -Syyuua ; sudo packer -Syyuu ; sudo pacman -Syu ; sudo pacman -Syy ; sudo pacman -Syyuu ; sudo pacman-optimize ; sudo pacman-mirrors -g ; sudo pacman-optimize && sync ; sudo pacman -Sy ; sudo pacman -Syy ; sudo pacman -Su ; sudo pacman -Syyu ; sudo pacman -Rns ; sudo pacman -Qdt ; sudo pacman -Sc ; sudo pacman -Syyuu ; sudo pacman-optimize ; yaourt -Syua -devel ; yaourt -Syyuua ; yaourt -Syu -devel -aur ; sudo reboot
.

Após o reboot, volto a este tutorial
.

COMANDOS DE OTIMIZAÇÃO PARA MANJARO
.

sudo pacman-mirrors -g ; sudo pacman-optimize && sudo sync ; sudo pacman -Sy ; sudo pacman -Syy ; sudo pacman -Su ; sudo pacman -Syyu ; sudo pacman -Syyuu
.

CRIE OS SEUS PRÓPRIOS ARTIGOS NO TELEGRAPH É SÓ ACESSAR ESTE LINK ABAIXO E CRIAR
.

http://telegra.ph/
.

COMANDOS DE TERMINAL MANJARO
.

Como executar comandos pelo Terminal usando Manjaro Linux?
.

AJUDA DO PACMAN
.

sudo pacman -h
.

sudo pacman –help

 

MANJARO
Instalando-Leitor-de-Música-Atraci

Atraci é um novo leitor de música de código aberto que usa o YouTube como fonte e que possui versões para Linux, Windows e Mac.

O programa será instalado nas seguintes pastas:
/opt/

/usr/bin/

/usr/share/

Uma vez instalado, se eu quiser remover; tenho que remover forçado usando:
sudo rm -Rf
Fica assim:

sudo rm -Rf /opt/Atraci*
sudo rm -Rf /usr/bin/Atraci
sudo rm -Rf /usr/share/applications/atraci.desktop
Para instalar manualmente, tem vezes que deve-se instalar algumas dependências. No caso do Atraci é tudo que tiver:
libudev

Para instalar estas dependências no Solus Linux uso o comando abaixo:
sudo -Ss libudev

Instalo as dependências com o comando abaixo:
sudo pacman -S libudev*
Agora uso o comando:

sudo ln -s /lib/x86_64-linux-gnu/libudev /lib/x86_64-linux-gnu/libudev

Baixo o Atraci com wget:
wget “https://github.com/Atraci/Atraci/releases/download/0.7.0/Atraci-linux64.tar.gz?raw=true&#8221; -O Atraci.tar.gz
Renomeio para:
Atraci.tar.gz
Faço o tar.gz virar uma pasta e mando ela para a pasta /opt/ com o comando abaixo:
sudo tar -zxvf Atraci.tar.gz -C /opt/
Percebo que para descompactar arquivos tar.gz devo usar os parâmetros -zxvf e para mover para /opt/ uso o parâmetro -C

O comando abaixo usa mv, que serve para renomear e mover arquivos. Neste caso é renomear para caso a pasta criada vir a ser nomeada diferentemente de Atraci durante a descompactação:

sudo mv /opt/linux*/ /opt/Atraci

Agora, devo tornar o arquivo Atraci da pasta Atraci que está em /opt/ executável usando chmod +x com o comando abaixo:

sudo chmod +x /opt/Atraci/Atraci

Crio um atalho para poder lançar o programa:
sudo ln -sf /opt/Atraci/Atraci /usr/bin/Atraci
Tento:
echo -e ‘[Desktop Entry]\n Version=1.0\n Name=atraci\n Exec=/opt/Atraci/Atraci\n Icon=””\n Type=Application\n Comment=leitor de música\n Categories=Application;Network’ | sudo tee /usr/share/applications/atraci.desktop

Neste comando acima, tenta-se criar uma entrada de Desktop Versão 1.0 chamada atraci executável a partir da pasta /opt/ com icone igual a ” ” o tipo é Application;Network usa-se o comando tee que reproduz o conteúdo fornecido pela entrada padrão tanto na saída padrão quanto em um ou mais arquivos, por isso é muito utilizado juntamente com canalizações para registrar a saída gerada por outros programas.

O nome do comando (tee) é mnemônico para a letra T, pois num diagrama mostrando o funcionamento do comando com a divisão da entrada padrão na saída padrão e em um arquivo acaba por lembrar esta letra.

Depois disto, eu posso tentar executar o Atraci com o comando abaixo:
/opt/Atraci/Atraci
Tento usar:
sudo chmod +x /usr/share/applications/atraci.desktop

cp /usr/share/applications/atraci.desktop ~/Área\ de\ Trabalho/

Como instalar o gerenciador de projetos ProjectLibre no Linux
sudo rm -Rf /opt/projectlibre*

sudo rm -Rf /usr/share/applications/projectlibre.desktop

wget https://ufpr.dl.sourceforge.net/project/projectlibre/ProjectLibre/1.7/projectlibre-1.7.0.tar.gz -O projectlibre.tar.gz

sudo tar -vzxf projectlibre.tar.gz -C /opt/

sudo mv /opt/projectlibre*/ /opt/projectlibre
echo -e ‘[Desktop Entry]\n Version=1.0\n Name=projectlibre\n Exec=java -jar /opt/projectlibre/projectlibre.jar\n Icon=gnome-power-statistics\n Type=Application\n Categories=Application’ | sudo tee /usr/share/applications/projectlibre.desktop

sudo chmod +x /usr/share/applications/projectlibre.desktop
cp /usr/share/applications/projectlibre.desktop ~/Área\ de\ Trabalho/
java -jar /opt/projectlibre/projectlibre.jar
.
MANJARO
Para incronizar os repositórios/procura por atualização e ignorar os grupos dos pacotes solicitados
$ sudo pacman -Syu –ignoregroup pacote1 , pacote2…

Sincronizar a base de dados
$ yaourt -Syua –devel
Atualizar o repo AUR
$ yaourt -Syyuua
Comandos manutenção yaourt juntos:
$ yaourt -Syua –devel ; yaourt -Syyuua
PESQUISAR no repo AUR
yaourt -Ss nome
INSTALAR pacotes do repo AUR
yaourt -S nome
REMOVER pacotes do repo AUR
yaourt -R nome
REMOVER pacotes + dependências do repo AUR
yaourt -Rsn nome
SINCRONIZAR a base de dados e atualiza pacotes
yaourt -Syu –devel –aur

 

Comando Yaourt. Com o yaourt podemos compilar programas, atualizar o sistema, pesquisar entre outras coisas.
Dizem que quando a gente complila um programa em vez de instalar ele automaticamente tipo com um gerenciador gráfico com imagens do programa que vai instalar descrição etc, o programa fica mais sob medida para a tua máquina. Mas o recomendado é instalar tudo pelo Pamac que é o instalador gráfico.
Yaourt não é executado como root ( # ).
No terminal tem que ter este sinal: $
Use yaourt para procurar programas. Use palavras normais (adj, subst, expressões) em ingles.
Ex: yaourt (uma destas palavras abaixo)
net, speed, chrome, games, office, video, music, webcam ; popcorn, arcade, message, telegram, facebook … e outras
Ficaria:
$ yaourt telegram ou $ yaourt popcorn

Apareceria uma lista de programas e você poderia escolher um e instalar. Exemplo:
$ yaourt -S popcorn
Se usar o comando yaourt o terminal irá pedir para compilar usando um editor de texto:
<nome_do_editor_de_texto> ~/.bashrc
Use:
<gedit> ~/.bashrc

Depois, siga as instruções do terminal.
Mas para usar o yaourt tem que instalar ele com o comando abaixo:

sudo pacman -S yaourt ; sudo pacman -Syu

Vamos instalar o WPS office com o comando YAOURT. É um bom exercício e teremos um bom programa compatível com o office da Microsoft.
Digite no terminal:
yaourt wps

O terminal fará uma busca no repo AUR e você escolhe o número que tiver a maior pontuação em amarelo.
No dia que instalo é o número 13. Digito 13 no terminal e aperto enter confirmo as solicitações do terminal e para compilar o programa executo o comando abaixo:

<mousepad> ~/.basrc

Aperto enter e sigo as instruções do terminal.
Manjaro, explique:
Exemplo e exercicio:
Instale o PopcornTime:
Para instalar o Popcorn Time, faça da seguinte maneira:
Pesquise na rede o que é popcorntime.
Abra o terminal.
Busque o pacote:
$ yaourt popcorntime

Na lista que aparecerá escolha o número de pontuação mais elevada, em amarelo geralmente.

Acompanhe as instruções do terminal.

Manjaro, explique compilando com yaourt:

Caso seja necessário:
Removendo: db.lck
$ sudo rm /var/lib/pacman/db.lck
Remover o db.lck não é necessário, significa que existe uma atualização ou comando acontecendo em segundo plano muitas vezes, por isto, preste atenção.
Manjaro, como procuro pacotes que foram instalados em um grupo? Preciso remover alguns…

Para procurar pacotes que foram instalados em um grupo
$ sudo pacman -Sg gnome
$ sudo pacman -Sg kde

 

DeepinScreenshot20170522185125

 

Manjaro, como instalar editores de texto?

Instale editores de texto leafpad gedit e vim.

$ sudo pacman -S gedit vim leafpad

Digite tua senha. Enter.
YAOURT faz buscas.
Obs: Se quiser achar algum programa que não tem no repositório MANJARO exemplo o grub-customizer, é só digitar:
$ yaourt grub-customizer
tecle (enter)

INSTALAR FIREWALL – Já vem pré instalado, mas caso remova, abaixo comando para instalar:
$ sudo pacman -S ufw gufw ; sudo ufw enable

Sugestão de web browsers e melhor browser performance:
yaourt profile-sync-daemon

yaourt pkgbrowser

yaourt google-chrome

yaourt tor-browser-en

yaourt brave-bin

yaourt ubuntu-themes

FIREJAIL – SANDBOX

comando que coloca tudo que pode em firejail(sandbox):
Antes vou fazer um update e upgrade com o comando abaixo:
yaourt -Syyuua && packer -Syyuu && sudo pacman -Syyuu
Depois coloco os programas que entram em contato com a rede no firejail com os comandos abaixo:
sudo pacman -S firejail
mkdir -p ~/.local/share/applications; for profile in $(basename -s .profile /etc/firejail/*.profile); do if [[ -f /usr/share/applications/$profile.desktop ]]; then sed -r ‘s/^(Exec=)/\1firejail /’ /usr/share/applications/$profile.desktop > ~/.local/share/applications/$profile.desktop; echo $profile configured to run in firejail; fi; done ;

sudo pacman -Sy ; sudo pacman -Syyuu

Como instalar o gerenciador de projetos ProjectLibre no Linux
Tem que ter o Java OpenJDK8 e o Java talvez seja ruim para segurança do Linux…

Para remover:
sudo rm -Rf /opt/projectlibre*

sudo rm -Rf /usr/share/applications/projectlibre.desktop
Para baixar o pacote:
wget https://ufpr.dl.sourceforge.net/project/projectlibre/ProjectLibre/1.7/projectlibre-1.7.0.tar.gz -O projectlibre.tar.gz
Para desempacotar e mover:
sudo tar -vzxf projectlibre.tar.gz -C /opt/

sudo mv /opt/projectlibre*/ /opt/projectlibre

Para criar icone:
echo -e ‘[Desktop Entry]\n Version=1.0\n Name=projectlibre\n Exec=java -jar /opt/projectlibre/projectlibre.jar\n Icon=gnome-power-statistics\n Type=Application\n Categories=Application’ | sudo tee /usr/share/applications/projectlibre.desktop
Para tornar executável:
sudo chmod +x /usr/share/applications/projectlibre.desktop
Para adicionar as aplicações:
cp /usr/share/applications/projectlibre.desktop ~/Área\ de\ Trabalho/

Para iniciar o programa:
java -jar /opt/projectlibre/projectlibre.jar

 

Manjaro, o que é YAOURT e PACKER?

YAOURT e PACKER
O comando Packer, checa repositórios oficiais e AUR mas NÃO É MAIS UTILIZADO NO MANJARO.

Instalava-se antigamente o PACKER com o YAOURT
$ yaourt -S packer
Tendo executado o comando acima, agora podia-se instalar programas usando packer:
$ packer -S nome_do_pacote
.
YAOURT

Os comandos para instalar pacotes usando yaourt, não necessitam de root (#).
Podem ser executados quando o terminal estiver ($)
Veja só:

O comando yaourt, tem o poder de instalar softwares que existem no repositório MANJARO XFCE 17.01-stable-x86_64 e também no repositório do “Pai” dele, o Arch.
Para o MANJARO XFCE 17.01-stable-x86_64 o Arch Linux é o que o Debian é para o Ubuntu. Uma distribuição diferente, uma ramificação, mas, novo sistema independente.
Manjaro, explique:

QUAL comando fazia upgrade oficial de repositórios e AUR?
$ packer -Syu

O Yaourt pode fazer atualizações e também downloads de pacotes oficiais do MANJARO XFCE 17.01-stable-x86_64 e, dos pacotes oficiais do Arch (mas somente se os novos arquivos PKGBUILD estiverem atualizados) para isto, use o comando abaixo:
$ yaourt -Syua

Manjaro, explique:
Para utilizar o comando Yaourt em downloads e reconstruir (compilar) os pacotes mais atuais da fonte do AUR (menos os arquivos PKGBUILD) tem que executar o comando abaixo:

$ yaourt -Syua –devel

Sabia que:
Você pode usar todos os comandos que acompanham Pacman, ensinados lá no começo com o Yaourt?
Uns comandos são diferentes.
Estes abaixo:

Remover pacotes orfãos é mais fácil e intuitivo com o comando Yaourt:
$ yaourt -Qdt

Manjaro, explique melhor:

Packer – O Manjaro não mantém o packer. O packer náo recebe atualização.

 
MANJARO – MANJARO – MANJARO
Software – Aplicativos – Programas – Pacotes
Nomes de aplicativos úteis, legais, interessantes que pelo menos você deveria tentar conhecer:
filezilla virtualbox blender steam dropbox gparted vlc gimp firejail libreoffice leafpad gedit thunderbird hexchat inkscape uget deluge gnome-chess xboard kollision smplayer rar calibre pinta neverball audacity cheese xfburn minitube xboard aria2 gdesklets vim shutter scribus youtube-dl p7zip tlp thermald gufw ufw preload thermald frozen-bubble teeworlds pingus ltris wget

 

Para instalar uso o comando abaixo:

 

sudo pacman -S filezilla virtualbox blender steam dropbox gparted vlc gimp firejail libreoffice leafpad gedit thunderbird hexchat inkscape uget deluge gnome-chess xboard kollision smplayer rar calibre pinta neverball audacity cheese xfburn minitube xboard aria2 gdesklets vim shutter scribus youtube-dl p7zip tlp thermald gufw ufw preload thermald frozen-bubble teeworlds pingus ltris wget ; sudo pacman -Syu

 

 

MEGASYNC

Instalar Megasync
$ yaourt -S megasync

Ou:

$ packer -S megasync

 
ICONES-TEMAS

Manjaro, como eu Instalo Ícones, Temas e Emblemas?

O primeiro é o hicolor, muitos programas depositam seus icones lá.

Dos tres comandos abaixo, o mais seguro é o pacman pois, o pacote vem do repositório do MANJARO XFCE 17.01-stable-x86_64.

É importante refletir sobre a origem dos pacotes.

O repositório Arch é enorme, mas todos os pacotes são seguros?

Você pode compilar muitos programas incríveis do repositório Arch.

O Manjaro não recomenda.

Tem motivo?

Tem.

No mundo Arch Linux cada usuário deve checar a integridade do que vai instalar por conta própria.

No mundo Arch Linux deve-se saber tudo o que se faz e em caso de algo errado só o usuário do sistema pode corrigir. Tem que ter muito conhecimento. Ou adorar pesquisar e participar de foruns.

$ sudo packer -S hicolor-icon-theme
$ sudo yaourt -S hicolor-icon-theme
$ sudo pacman -S hicolor-icon-theme

Instalando o Tema Flat-Plat

$ yaourt -S flatplat-theme

$ packer -S flatplat-theme
Instalando o Tema Adapta

$ yaourt -S adapta-gtk-theme

$ packer -S adapta-gtk-theme

Instalando Arc-Icon-Theme e moka-icon-theme-git

(Atualizado) Arc-Icon-Theme FaenzaIcon-Theme e Numix-Reborn-Icon-Theme
$ sudo pacman -S community/arc-icon-theme community/faenza-icon-theme community/numix-reborn-icon-themes && sudo pacman -S moka-icon-theme && sudo pacman -Syyuu

 

 

WINFF – WINFF – WINFF – WINFF

MP4 para Avi – Como converter usando o WinFF?
WinFF é um aplicativo versátil, que pode converter arquivos individuais ou múltiplos arquivos em vários formatos, tudo ao mesmo tempo.

Ele é um conversor de vídeo gratuito de código aberto licenciado sob a GNU Public License v3 e escrito em Free Pascal e Lazarus.

O programa é multi plataforma, por isso pode ser usado tanto em Linux e Windows.

Além de suportar várias línguas.

A seguir será mostrado como instalar esse programa e como exemplo, você verá como converter um MP4 para Avi usando o WinFF, mas o mesmo processo pode ser feito de e para os outros formatos que o programa suporta.
Para instalar o WinFF, faça da seguinte forma:
$ sudo pacman -S winff

 

ICONES LILA

Instalando o conjunto de ícones Lila-HD no Manjaro

yaourt -S lila-hd

 
TEMA – VERTEX
Instalando tema Vertex no Manjaro

vertex_theme

Vertex é um tema para GTK-3, GTK-2, Gnome Shell e Cinnamon. Ele suporta ambientes de desktop GTK 3 e GTK 2 baseados como Unity, Gnome Shell, Gnome Classic, Gnome Fallback, Cinnamon, Mate, XFCE, Budgie, Pantheon e etc. O tema vem com três variantes para escolher. A variante padrão com header-bars escuras, uma variante leve, e uma variante escura. Para instalar o tema Vertex, faça da seguinte forma:

$ sudo pacman -s vertex-themes

$ yaourt -S vertex-themes

$ packer -S vertex-themes

 

ICONE-TEMA NITRUX

Nitrux é um conjunto de ícones simples, limpo e artesanal para ambientes baseados GTK (Gnome, Cinnamon, Mate, XFCE, LXDE), KDE (Plasma, Plasma 5) e Android. Nitrux é parte do Nitrux Artwork Project. O conjunto é um dos mais completos que você pode encontrar.

Para instalar o Nitrux em GTK (Unity, Gnome, Xfce, Cinnamon e etc.), faça da seguinte forma:

$ yaourt -S nitrux-icon-theme
Para instalar o Nitrux em QT (KDE, LXQT e etc.), faça da seguinte forma:

$ yaourt -S nitrux-icon-theme-kde

 

TV

Canais de TV a cabo gratis

# $ sudo pacman -S kodi

$ yaourt -S kodi-addon-pvr-iptvsimple-git

 

HANDBRAKE

Como instalar a versão mais recente do HandBrake no Manjaro.

Bastante popular, o HandBrake é um decodificador de vídeo de código aberto para Linux, Windows e Mac OS X. O programa é também uma ferramenta para ripar DVDs. Ele converte os filmes em MPEG-4 e, além de oferecer diversas opções de configuração, insere a legenda desejada diretamente no resultado final.
Além de tudo isso, o aplicativo vem com presets embutidos (perfis) e, além de formatos multimídia comuns, ele suporta DVD ou Bluray desprotegidos, legendas e muito mais.
Para instalar o HandBrake, escolha uma destas maneiras:

$ yaourt -S handbrake
$ sudo pacman -S handbrake && sudo pacman -Syu
Parecido com o Handbrake temos também o Winff e, para gravar coisas que fazemos no desktop o programa Kazam (bom para publicar tutorias no youtube) é um dos melhores e mais fáceis de usar.

$ sudo pacman -S winff && sudo pacman -Syu
$ yaourt kazam

 
QUADRINHOS

Leitor de quadrinhos MComix no Manjaro

mcomix

MComix é um leitor de quadrinhos versátil que suporta ambos os quadrinhos (ocidentais e mangá), em uma variedade de formatos de contêiner, incluindo CBR, CBZ, CB7, LHA e PDF. O aplicativo está disponível para Linux e Windows.
O aplicativo começou como um fork do Comix (app cujo o desenvolvimento parou em 2009), com o principal objetivo de dar correções de bugs e melhorias de estabilidade.
Contudo, MComix tem evoluído ao longo dos anos, ganhando novos recursos e várias melhorias, e tornando-se um leitor de quadrinhos sólido. Para instalar o MComix, faça da seguinte forma:
# pacman -S mcomix –noconfirm

 

 

FREEFILESYNC

Comparando e sincronizando pastas com FreeFileSync

O que é FreeFileSync?
FreeFileSync é uma ferramenta de código aberto multiplataforma para comparar e sincronizar pastas no Linux, Windows e Mac OS X.

Entre outros, ele tem suporte para a realização de comparação de arquivo binário, identificador de links simbólicos, copiar atributos estendidos de NTFS e permissões de segurança, cópia de arquivo à prova de falhas, inclui/excluir arquivos via filtro, tem desempenho em tempo de execução otimizada, relatório de erros detalhado e pode automatizar trabalho em lotes.
Para instalar o FreeFileSync, faça da seguinte forma:

$ sudo pacman -S freefilesync

$ packer -S freefilesync

$ yaourt -S freefilesync

 

PDF Mod – uma ferramenta para modificar documentos PDF
PDF Mod é uma ferramenta simples para modificar documentos PDF.

Ele pode girar, extrair, remover e reordenar as páginas simplesmente arrastando e soltando.

Vários documentos podem ser combinados através de arrastar e soltar.

Você também pode editar o título, assunto, autor e palavras-chave de um documento PDF usando o programa.

Para instalar o PDF Mod, faça da seguinte forma:

$ sudo pacman -S pdfmod

 

KEEPASS2

Proteja suas senhas.

$ sudo pacman -S keepass2 keepass keepassx enpass veracrypt

 

SUBDOWNLOADER

Instale baixador de legendas.

$ sudo pacman -S subdownloader

 
MULTIMIDIA CONVERTER
Conversor de arquivos multimídia:
Instale o dmMediaConverter
dmMediaConverter é um software baseado no FFMpeg, que permite converter facilmente seus arquivos de áudio e vídeo em formatos populares.

Entre as principais características do MediaConverter está a sua capacidade de combinar ou dividir um arquivo de vídeo, incluir legendas em srt, ass, ssa, mov_text, e dvdsub e muito mais.
Para instalar o dmMediaConverter, faça da seguinte forma:
$ yaourt -S dmmediaconverter

 

GRUB-CUSTOMIZER
Instale o Grub Customizer no Manjaro

O programa é uma interface gráfica para alteração das configurações do grub2 (gerenciador de boot padrão do Manjaro). Ele é uma aplicação agradável, que permite ao usuário editar as entradas do menu a partir da tela de inicialização do GRUB e definir o sistema operacional padrão.

Para instalar o Grub Customizer, faça da seguinte forma:

$ yaourt -S grub-customizer

 

RIPAR CD’s

Como instalar o ripador Asunder CD Ripper no Manjaro

$ sudo pacman -S asunder

 

CITADEL

Alternativa ao Microsoft Exchange:

Conheça Citadel.

O Microsoft Exchange é atualmente uma das soluções comerciais mais conhecidas e utilizadas para colaboração on-line entre vários usuários.

Felizmente, os usuários de Linux tem várias alternativas ao Microsoft Exchange, como o Citadel, um projeto open source que está incluído nos repositórios oficiais das principais distribuições Linux. Para instalar o Citadel, faça da seguinte forma:

$ yaourt -S citadel

 

SELENE

Converta arquivos multimídia com Selene Media Encoder

selene

Selene é uma ferramenta de conversão de mídia, desenvolvido por Tony George (que também está por trás Conky Manager) usando GTK3/Vala. O programa tem como objetivo fornecer uma interface gráfica simples para converter arquivos para os formatos populares, juntamente com opções de linha de comando poderosas para codificação autônoma/automatizada. Para instalar o Selene, faça da seguinte forma;

$ yaourt -S selene-media-encoder

 

 

TRATAMENTO DE IMAGENS

Ferramenta de otimização de imagens no Manjaro.

Trimage é um programa que possui uma interface gráfica multiplataforma e uma interface de linha de comando para otimizar os arquivos de imagem para sites, usando optipng, pngcrush, advpng e jpegoptim. Atualmente, ele suporta os arquivos PNG e JPG.

Para instalar o Trimage, faça da seguinte forma:
$ yaourt -S trimage-git

 
ANONIMIDADE

Navegação anônima e segura com I2P no Manjaro.

I2P significa “Invisible Internet Project” (Projeto de Internet invisível).

O recurso é uma camada de rede de computador que permite que aplicativos possam enviar mensagens a outros, sob pseudônimo e com segurança.

Os usos incluem navegação web anônima, chat, transferências de arquivo e blogging.

Na prática, I2P é uma rede anônima, expondo uma camada simples que os aplicativos podem usar para anonimamente e de forma segura, enviar mensagens uns aos outros.

A rede em si é estritamente baseada em mensagem mas existe uma biblioteca disponível para permitir a permitir a comunicação confiável de streaming sobre ela.

Com isso, o I2P protege a sua comunicação de vigilância arrastão e monitoramento por terceiros, tais como ISPs.

Para instalar o I2P, faça da seguinte forma (tá fraco):

$ yaourt -S i2p
Após a instalação execute o I2P usando o seguinte comando em um terminal:

$ i2prouter start
Se o navegador não abrir depois de executar o comando acima, basta usar o endereço abaixo em seu navegador:

http://localhost:7657

Uma vez que a conexão for estabelecida com sucesso, você verá a mensagem “Network OK” (Rede OK) no painel esquerdo.

i2p

Quando quiser parar o serviço I2P use o seguinte comando em um terminal:

$ i2prouter stop

 
ANGRY IP
Instale o Angry IP Scanner no Manjaro

Angry-IP-Scanner

Angry IP Scanner é um scanner de rede TCP/IP que permite aos usuários facilmente fazer a verificação de endereços IP, dentro de qualquer faixa de sua escolha, através de uma interface fácil de usar.
Essa ferramenta é muito útil e permite que os administradores de rede ou qualquer usuário de sistemas baseados em Linux para analisar e escanear máquinas de uma rede.

Uma vez que o Angry IP Scanner detecta um endereço IP ativo, ele então resolverá seu endereço MAC, hostname e porta.
Os dados recolhidos podem então ser armazenados como arquivos TXT, CSV, XML ou lista de IP-Porta. Para instalar o Angry IP Scanner, faça da seguinte forma:
$ yaourt -S ipscan

 

FACEBOOK – WHATSAPP – TELEGRAM
FRANZ – FRANZ – FRANZ – FRANZ – FRANZ
Tenha todos serviços de mensagens com Franz. O Franz ainda está em desenvolvimento e possui versões para as 3 principais plataforma, Windows, Linux e Mac. Basicamente ele consegue concentrar as versões online dos cada um dos serviços em abas, fazendo com que seja possível acessá-los facilmente, alternando entre os serviços facilmente. Os serviços suportados incluem: Slack, Messenger, WhatsApp, Telegram, Skype, WeChat, HipChat, Hangouts, Grape e GroupMe.
Para instalar o Franz, faça da seguinte forma:
$ yaourt -S franz
Para instalar o TELEGRAM oficial, digito:

$ yaourt telegram
procuro pelo pacote binario e digito o número não esquecendo de depois de instalar o telegram:
Remember to delete the official (non-tweaked) launcher by using:
rm ~/.local/share/applications/telegramdesktop.desktop
After running Telegram Desktop e baixar uma imagem qualquer pelo menos.

 

 

GERAR GIF ANIMADO ou VIDEO
Como fazer uma gravação de tela e gerar GIF animado ou vídeo?
Use Silentcast
Silentcast é uma ferramenta de gravação de tela e criação de GIF animado ou vídeo. O programa é simples, direto e prático. Assim, em poucos clique você grava o que precisa e obtém o arquivo de saída dessa gravação.
Como fazer uma gravação de tela e gerar GIF animado ou vídeo usando o Silentcast
Para realizar uma gravação de tela e gerar GIF animado ou vídeo usando o Silentcast, você precisa fazer o seguinte:
Na tela do programa, informe a pasta onde o arquivo será salvo digitando dentro do campo “Working Directory”. Selecione a área da tela que será gravada, clicando na seta ao lado do campo “Area to be recorded”. Para definir o número s de quadros, preencha o campo “Frames per second”. A seguir marque a opção “anim.gif” (se quiser vídeos, marque as opções referente webm ou mp4). Finalmente, clique no botão “OK”;

Depois disso, será exibida abaixo. Quando você estiver pronto para começar a fazer as ações que serão gravadas, clique no botão “OK”;

Faça o que você precisa gravar e quando terminar, clique no ícone do programa no painel e depois na opção “Done”;
Para instalar o Silentcast, faça da seguinte forma:
$ yaourt -S silentcast

 
XDMAN
Gerenciador de download Xtreme Download Manager no Manjaro
xdman
Xtreme Download Manager é utilitário que tem a capacidade de aumentar a velocidade de download até a 500% (depende da conexão), ele pode pausar/retomar downloads até mesmo retomar downloads quebrados sem a opção de retomar. O programa também tem a funcionalidade de pegar vídeos disponíveis na internet e oferece um recurso de agendamento de downloads. Para completar, ele pode ser integrar com qualquer navegador para gerenciar downloads automaticamente usando integração avançada do navegador. O Xtreme Download Manager utiliza um sofisticado algoritmo de segmentação dinâmica, compressão de dados e reutilização da conexão para acelerar o processo de download. Ele suporta HTTP, HTTPS e FTP, firewalls, servidores proxy, redirecionamentos de arquivos, cookies, autorização etc. Para instalar o Xtreme Download Manager, faça da seguinte forma:

$ yaourt -S xdman

Confirme com S ou Y

Para compilar use:

<mousepad> ~/.bashrc

Confirme com S ou Y

 

 

CAPTURA DE TELA
Tire print da tela com HotShots
HotShots
HotShots é uma ferramenta de captura de tela com alguns recursos de edição (redimensionar, cortar, etc). Ele é particularmente adequado para escrever documentação, mas você pode usá-lo para destacar alguns detalhes de uma imagem, de mapa ou o que você quiser. Como o programa é escrito com Qt, ele tem poucas dependências e usa poucos recursos do computador. Para instalar o HotShots, faça da seguinte forma:
$ yaourt -S hotshots

 

 

MY PAINT
Instale o programa de pintura digital MyPaint no Manjaro
mypaint
O programa de pintura digital MyPaint é uma ferramenta ágil e fácil para os pintores digitais. Ele permite que você se concentre na arte, em vez do programa. Você trabalha em sua tela com um mínimo de distrações, trazendo a interface somente quando você realmente precisa dela. O programa possui um suporte básico de camadas, uma interface de usuário simples e minimalista, além ter sido projetado para o uso em tablets sensíveis à pressão, como as feitas pela Wacom e muitos dispositivos semelhantes. Ele vem com uma grande coleção de pincéis, incluindo carvão e tinta para emular um pincel real, mas o engine de pincéis é versátil e altamente configurável, e fornece ferramentas produtivas úteis. Isso permite experimentar seus próprios pincéis e muito mais. Para instalar o MyPaint, faça da seguinte forma:
$ yaourt -S mypaint-git

 
EDITOR DE IMAGENS
Tenha um editor de imagens simples e completo com o Pinta
pinta
Pinta é um programa gratuito, ele é um editor de imagem simplificado baseado em Paint.NET (e, portanto, ele usa Mono), concebido para servir como uma alternativa ao GIMP para usuários casuais. Seu objetivo é fornecer aos usuários uma maneira simples e poderosa para desenhar e manipular imagens no Linux, Mac e Windows. Para instalar o Pinta, faça da seguinte forma:

$ sudo pacman -S pinta –nonconfirm

 
PAINEL PARA AMBIENTE DE TRABALHO
Instale uma Dock leve no Manjaro
plank
Plank pretende ser a dock mais simples do planeta. O objetivo é fornecer apenas o que é necessário em uma dock e absolutamente nada mais. Ela, no entanto, é uma biblioteca que pode ser estendida para criar outros programas de dock com recursos mais avançados. Essa dock foi criada pela mesma equipe que produziu a Docky, assim, Plank é a tecnologia subjacente para Docky (a partir da versão 3.0.0) e tem como objetivo fornecer todas as características centrais, enquanto Docky permite adicionar coisas extravagantes como Docklets, painters, diálogos de configurações e etc. O aplicativo, que está disponível por padrão no Elementary OS, tem vários modos de esconder, posição da tela personalizável, tema e tamanho do ícone, suporta fixação aplicativos para a dock, quicklists e muito mais. Para instalar o Plank, faça da seguinte forma:
$ sudo pacman -S plank plank-config

 
DESENHE – CRIE -PROJETOS – ENGENHARIA – ARQUITETURA
AutoCAD no Linux – Instale o DraftSight no Manjaro
draftsight
Desenvolvido pela Dassault Systemes (que também é desenvolvedora dos softwares Catia e Solidworks), DraftSight é um software gratuito para desenho técnico disponível para Linux, Microsoft Windows e OS X. Ele é atualmente um dos melhores softwares para o design técnico de CAD 2D (e 3D parcialmente), disponível para Linux. Mais o grande destaque desse aplicativo é o seu suporte para leitura e gravação de arquivos em formato DWG e DXF (do AutoCad), ou seja, com ele você pode lidar com arquivos do AutoCAD no Linux, sem precisar instalar o AutoCAD. DraftSight permite anexar modelos de referência externos e tem a capacidade de gerar arquivos no formato PDF com múltiplas páginas, tem um sistema de coordenadas cartesianas, além de desenho em camadas, máscaras de fundo para anotações, suporte para tabelas de estilo de plotagem CTB e STB e muito mais. Para instalar o DraftSight, faça da seguinte forma:
$ yaourt -S draftsight

 
DESENHE – CRIE -PROJETOS – ENGENHARIA – ARQUITETURA
Instalando o FreeCAD no Manjaro
freecad
FreeCAD é um modelador 3D paramétrico de propósito geral baseada em recursos para CAD, MCAD, CAx, CAE e PLM. A modelagem paramétrica permite que você modifique facilmente seu projeto, voltando atrás no histórico do seu modelo e mudando seus parâmetros. O programa é voltado diretamente para engenharia mecânica e design de produto, mas que também se encaixa em uma ampla gama de usos em engenharia, tais como arquitetura ou outras especialidades de engenharia. O programa é 100% Open Source e extremamente modular, permitindo inúmeras possibilidades de personalização e de programação de extensões. FreeCAD é baseado no OpenCasCade, um kernel de geometria poderoso. Ele lê e produz muitos formatos abertos de arquivos como STEP, IGES, STL e outros. Além disso, sua interface é construída com Qt FreeCAD, ou seja, ele funciona exatamente da mesma maneira em plataformas Windows, Mac OS X e Linux. Para instalar o FreeCAD, faça da seguinte forma:
$ sudo pacman -S freecad

 

 

ICONES – TEMAS
Instalando ícones Faenza-Cupertino
cupertino
Um monte de gente usa o ícone Faenza, mas para mim ele não é tão bonito. Mas John Green criou um tema chamado Faenza-Cupertino que só substitui as pastas originais para torná-lo mais parecido com o estilo Elementary original, mas usando os ícones Faenza, deixando mais agradavel. Para instalar os ícones Faenza-Cupertino, faça da seguinte forma:
$ yaourt -S faenza-cupertino-icon-theme
$ packer -S faenza-cupertino-icon-theme

 

 

CONVERTER IMAGENS
Conversor de imagens Converseen
converseen
Ao usar o Converseen você pode economizar muito seu tempo, pois ele pode processar mais de uma imagem com um único clique do mouse. Além disso, graças ao uso das bibliotecas Magick++, ele suporta mais de 100 formatos de imagem como DPX, EXR, GIF, JPEG, JPEG-2000, PhotoCD, PNG, Postscript, SVG, TIFF e muitos outros. Com o conversor de imagens em lote Converseen, você pode:

Realizar uma única ou uma conversão múltipla;

Redimensionar uma ou várias imagens;

Comprimir imagens para suas páginas web;

Girar e inverter imagens;

Renomeiar um monte de imagens usando um número progressivo ou um prefixo/sufixo;

Selecionar um filtro de reamostragem para redimensionar imagens. Para instalar o Converseen, faça da seguinte forma:
$ yaourt -S converseen

 

 

PLAYER
Como instalar o Player Quod Libet no Manjaro. Quod Libet é um áudio player GTK+ de código aberto escrito em Python, que usa a biblioteca de marcação Mutagen, sendo capaz de lidar com grandes bibliotecas. Esse reprodutor foi projetado em torno da ideia de que você sabe como organizar a sua música melhor do que os produtores do software. Ele permite que você faça playlists baseadas em expressões regulares (não se preocupe, pesquisas regulares também funcionam). Ele permite que você exiba e edite todas as tags que você quer no arquivo, para todos os formatos de arquivo que ele suporta. Ele também suporta a maioria das características que você esperaria de um moderno media player: suporte a Unicode, edição de tag avançado, Replay Gain, podcasts e rádio pela internet, suporte a arte do álbum e a todos os principais formatos de áudio.

Para instalar o Quod Libet, faça da seguinte forma:

$ yaourt -S quodlibet

 

 

LIMPEZA – LIMPEZA – LIMPEZA – LIMPEZA

LIMPANDO PACOTES:

Programa CacheClean
Instale:

$ yaourt -S pkgcacheclean

O terminal solicitará editor para compilar:

<gedit> ~/.bashrc

 

COMANDOS CACHE CLEAN:
deleta tudo menos as 2 últimas versões instala pacotes no cache do pacman:

$ sudo pkgcacheclean 1

Remover pacotes deixando apenas as 2 últimas versões:

# pacman -Sc

Remove todos os pacotes e impossibilita Downgrade. ARRISCADO.

# pacman -Scc

Comando 3

Um modo seguro de remover pacotes. Remove todos menos as 3 últimas versões.

$ sudo paccache -rvk3
comando 4

Limpando pacotes orfãos do sistema.

$ sudo pacman -Qdtq
se receber mensagem de erro é que não tem orfãos no sistema.
Comando 5

Lista de pacotes instalados.

$ sudo pacman -Qdt

 

SALVAR ENERGIA – ECONOMIA
Comandos salvar energia – Powersavers
$ sudo pacman -S tlp && systemctl enable tlp

Para máquinas Intel.

$ sudo pacman -S thermald

$ sudo systemctl enable thermald

PowerTOP

$ sudo pacman -S powertop

$ sudo powertop

$ sudo powertop –html

 

Manjaro: Instalar todos os softwares que eu gosto de uma vez só

 

$ sudo pacman -S conky conky manager conky all

 
$ sudo pacman -Sy ; sudo pacman -S smplayer ; sudo pacman -S vlc comix uget winff gdebi k3b liferea chromium-bsu pitivi gconjugue mplayer mpg123 smplayer p7zip cheese calibre subdownloader fbreader chkrootkit handbrake gimp gnuchess xboard firejail

 
sudo bash -c “echo ‘vm.swappiness = 10’ >> /etc/sysctl.conf” ; mkdir -p ~/.local/share/applications; for profile in $(basename -s .profile /etc/firejail/*.profile); do if [[ -f /usr/share/applications/$profile.desktop ]]; then sed -r ‘s/^(Exec=)/\1firejail /’ /usr/share/applications/$profile.desktop > ~/.local/share/applications/$profile.desktop; echo $profile configured to run in firejail; fi; done

 
sudo pacman -Sy ; sudo pacman -S smplayer ; sudo pacman -S vlc comix uget winff gdebi k3b liferea chromium-bsu pitivi gconjugue mplayer mpg123 smplayer p7zip cheese calibre subdownloader fbreader handbrake gimp gnuchess xboard firejail && sudo pacman -Syyuu && sudo pacman -S freevial kazam mypaint pinta gpick musique audio-recorder fortune-mod cowsay xdman scratch gtetrinet gsmartcontrol opendict psensor xgnokii pitivi gradio handbrake soundkonverter youtube-dl mplayer smplayer clementine ufw gufw firejail preload handbrake asunder kazam ardour audacity bleachbit uget calibre fbreader gnome-chess xboard preload aria2 filezilla gimp gparted gedit leafpad inkscape gimp mypaint pinta gpick musique liferea youtube-dl pacman retext geany armagetronad && sudo pacman -Syyuu

 

sudo pacman-mirrors -g && sudo pacman-optimize && sync ; sudo pacman -Sy && sudo pacman -Syy && sudo pacman -Su && sudo pacman -Syyu && sudo pacman -Syyuu

 

(você pode remover alguns aplicativos destas sequências de comandos. Use editor de texto gedit, leafpad ou writer)

 

Ao fim executo:

 
sudo pacman-mirrors -g ; sudo pacman-optimize && sync ; sudo pacman -Sy ; sudo pacman -Syy ; sudo pacman -Su ; sudo pacman -Syyu ; sudo pacman -Syyuu

 

REVISÃO – 2017-MANJARO-17.1-COMANDOS-BASICOS

 
sudo pacman -Sy = sincroniza os repositórios.
sudo pacman -Su = procura por atualização
sudo pacman -Syu = sincroniza os repositórios/procura por atualização
sudo pacman -Syy = sincroniza os repositórios do Manjaro Linux
sudo pacman -Syyu = sincronização total/procura por atualização
sudo pacman -S pacote = instala um pacote
sudo pacman -R pacote = remove um pacote
sudo pacman -Rs pacote = remove o pacote junto com as dependências não usadas por outros pacotes
sudo pacman -Rsn pacote = remove o pacote junto com as dependências não usadas por outros pacotes e junto com os arquivos de configuração
sudo pacman -Ss pacote = procura por um pacote
sudo pacman -Sw pacote = apenas baixa o pacote e não o instala
sudo pacman -Si pacote = mostra informações de um pacote não instalado
sudo pacman -Qi pacote = mostra informações do pacote já instalado
sudo pacman -Se pacote = instala apenas as dependências
sudo pacman -Ql pacote = mostra todos os arquivos pertencentes ao pacote
sudo pacman -Qu = mostra os pacotes que serão atualizados
sudo pacman -Q = lista todos os pacotes instalados
sudo pacman -Qo arquivo = mostra a qual pacote aquele arquivo pertence
sudo pacman -Qdt = lista pacotes desnecessários, sem dependências
sudo pacman -Rns $(pacman -Qqdt) = apaga pacotes desnecessários, sem dependências
sudo pacman -A pacote.pkg.tar.gz = instala um pacote local
sudo pacman -Sc = deleta do cache todos os pacotes antigos
sudo pacman -Scc = limpa o cache, removendo todos os pacotes existentes no /var/cache/pacman/pkg/
sudo pacman-optimize = otimiza a base de dados do pacman
sudo pacman -Sdd = instala ignorando as dependências
sudo pacman -Rdd = elimina um pacote ignorando as dependências
sudo pacman-mirrors.conf = para gerenciar pacman.cof
sudo pacman-mirrors -g = para gerar um novo mirrorlist
sudo pacman -U home/user/arquivo.tar.xz = instalar pacotes baixados no pc
sudo pacman -U http://www.site.com/arquivo.tar.xz = instalar pacotes baixados via download
sudo pacman -Qem = lista pacotes instalados do repo AUR
sudo pacman -Rscn = desinstala pacotes e suas dependencias e seus registros, tudo
sudo pacman -S pacote –noconfirm = Instala o pacote sem precisar confirmar com “yes/no ,S/N”…
sudo pacman -Syu –ignoregroup pacote1 , pacote2… = sincroniza os repositórios/procura por atualização e ignora os grupos dos pacotes solicitados
yaourt -Syua –devel = sincronizar a base de dados
yaourt -Syyuua = atualizar o repo AUR
yaourt -Ss nome = pesquisar no repo AUR
yaourt -S nome = instalar pacotes do repo AUR
yaourt -R nome = remover pacotes do repo AUR
yaourt -Rsn nome = remover pacotes + dependências do repo AUR
yaourt -Syu –devel –aur = sincronizar a base de dados e atualiza pacotes

 

 

COMO INSTALAR MANUALMENTE O TELEGRAM NO MANJARO LINUX
sudo rm -Rf /opt/telegram*

sudo rm -Rf /usr/bin/telegram

sudo rm -Rf /usr/share/applications/telegram.desktop
wget “https://telegram.org/dl/desktop/linux&#8221; -O telegram.tar.xz

sudo tar Jxf telegram.tar.xz -C /opt/

sudo mv /opt/Telegram*/ /opt/telegram

sudo ln -sf /opt/telegram/Telegram /usr/bin/telegram

echo -e ‘[Desktop Entry]\n Version=1.0\n Exec=/opt/telegram/Telegram\n Icon=Telegram\n Type=Application\n Categories=Application;Network;’ | sudo tee /usr/share/applications/telegram.desktop

sudo chmod +x /usr/share/applications/telegram.desktop

cp /usr/share/applications/telegram.desktop ~/Área\ de\ Trabalho/

 

 

Fico por aqui.

 

Até Breve

 

Notas-aprendendo-comando-grep-linux-artigo-tutorial

 

Maio-2017
command-grep

 

SOBRE O COMANDO GREP DO LINUX

Como sempre, pesquisei na internet encontrei informações. Separei as que achei mais interessantes para mim e montei esta anotação para eu usar. Dá para eu ter pelo menos uma noção do que é o comando grep. Espero que minha anotação lhe seja util. Ela é útil para mim.

 
O significado do nome é (Globally Search a Regular Expression and Print)

 

O Grep procura texto em uma string ou dentro de arquivos e mostra linhas, ocorrências. O Grep usa combinações para pesquisar e o resultado da pesquisa pode ser mostrado na tela.

 
O grep já vem instalado no Linux.

 
Digitando apenas o comando e dando enter ele não faz nada, mas se digito um parâmetro tipo -V já posso saber a versão do grep que tenho instalado no meu Linux.

 

$ grep -V
grep (GNU grep) 3.0
Copyright (C) 2017 Free Software Foundation, Inc.
Licença GPLv3+: GNU GPL versão 3 ou superior <http://gnu.org/licenses/gpl.html&gt;.
Este é um software livre: você é livre para alterá-lo e redistribuí-lo.
NÃO HÁ GARANTIAS, na máxima extensão permitida por lei.

Escrito por Mike Haertel e outros, veja <http://git.sv.gnu.org/cgit/grep.git/tree/AUTHORS&gt;

 
Alguns parâmetros que posso usar e suas respectivas funções:

 

PARÂMETROS E SUAS FUNÇÕES:

 

 

-c
Conta quantas vezes apareceu a string que esta pesquisando

-v
Mostra na tela “tudo” menos onde houver a ocorrência da string pesquisada

-i
Realiza uma busca pela string ignorando o case, sendo case-insensitive

-o
Ira mostrar na tela apenas as ocorrências da string pesquisada ignorando o resto

-n
Ira mostrar na tela na primeira coluna a linha onde encontrou a string pesquisada

-B
Numero de linhas a serem impressas antes da linha que contem a string pesquisada [BEFORE]

-A
Numero de linhas a serem impressas na tela depois da encontrar a linha com a string [AFTER]

-C
Quantidade de linhas antes e depois da linha que contem a string [CONTEXT]

-q
Ira procurar pela string informada, porém estará em modo silencioso, nada sera impresso na tela, porém caso encontre o comando encerra com 0, caso não encontre nada será 1

-E
Extende o uso de Regex no padrão e combinação, usando logica AND e OR por exemplo

-f
Um arquivo com combinações de padrões com Regex, podendo usar varias combinações

-l
Mostra somente o nome do arquivo onde foi encontrado a string pesquisada

-L
Semelhante ao -v, porque mostra apenas os arquivo que não contem a string informada

-h
Pesquisa varias arquivos, diretórios se com -r mas não mostra o nome dos arquivos

-r
Ira realizar uma pesquisa recursiva em todos os diretórios a partir do informado

–color
Deve-se passar o parâmetro ‘never’ caso não queira que a saída marque com cor a string ou ‘auto’ e ‘always’ para operar conforme necessite. Pode mudar a cor alterando GREP_COLOR, GREP_COLORS no environment

 

 

Crio um arquivo chamado palavras.txt coloco um texto dentro e brinco com o grep.

 

echo -ne “amor\ncasa\nCasa\nCASA\nRaspberryPI\nRaspberry PI\nRaspberry B PI\nArduino\narduino\nARDUINO\nIDEArduino\nLinux é o poder\nEu programo Python e você?\n” > palavras.txt

 

Visualizo o arquivo que criei:

 

$ cat palavras.txt
amor
casa
Casa
CASA
RaspberryPI
Raspberry PI
Raspberry B PI
Arduino
arduino
ARDUINO
IDEArduino
Linux é o poder
Eu programo Python e você?

 
Uso o grep para pesquisar pela string “Raspberry“, posso usar de duas maneiras:

 
Com o cat um pipe e logo em seguida um grep ou diretamente com o comando.

 

A primeira opção é muito utilizada, porém perde performance caso eu realize pesquisa em muitos arquivo ou em um arquivo longo.

 
$ cat palavras.txt | grep “Raspberry”
RaspberryPI
Raspberry PI
Raspberry B PI

$ grep “Raspberry” palavras.txt
RaspberryPI
Raspberry PI
Raspberry B PI

 

Caso eu queira contar o numero de ocorrências da string “Raspberry”:

$ grep -c “Raspberry” palavras.txt
3

 

Se eu quiser ver tudo menos a string que contenham “Raspberry”:

$ grep -v “Raspberry” palavras.txt
amor
casa
Casa
CASA
Arduino
arduino
ARDUINO
IDEArduino
Linux é o poder
Eu programo Python e você?

 

Agora quero pesquisar pela string “arduino”.

$ grep “arduino” palavras.txt
arduino
$ grep “arduino” palavras.txt
arduino

 

Tenho Arduino escrito de diversas maneiras, então vou executar o grep para ser case-insensitive.

$ grep -i “arduino” palavras.txt
Arduino
arduino
ARDUINO
IDEArduino

 

E se no lugar de mostrar a linha inteira ou o que estiver junto eu mostrar apenas a string procurada.

$ grep -o “arduino” palavras.txt
arduino
$ grep -oi “arduino” palavras.txt
Arduino
arduino
ARDUINO
Arduino
$ grep -oi “Raspberry” palavras.txt
Raspberry
Raspberry
Raspberry

 

Se eu precisar saber o numero da linha onde foi encontrada a string.

$ grep -n “Raspberry” palavras.txt
5:RaspberryPI
6:Raspberry PI
7:Raspberry B PI
$ grep -n “duino” palavras.txt
8:Arduino
9:arduino
11:IDEArduino

 

Agora vou pesquisar pela string “arduino” e obter também as 2 linhas antes da string encontrada.

$ grep “arduino” -B 2 palavras.txt
Raspberry B PI
Arduino
arduino

 

O mesmo posso fazer obtendo as linhas depois da linha com a string pesquisada.

$ grep “arduino” -A 2 palavras.txt
arduino
ARDUINO
IDEArduino

 

Posso unir as duas opções, pegando e imprimindo linhas antes e depois da linha que contem a string pesquisada.

$ grep “arduino” -C 2 palavras.txt
Raspberry B PI
Arduino
arduino
ARDUINO
IDEArduino

 

Caso eu não queira mostrar nada na tela, só saber se teve sucesso ou não na pesquisa.

$ grep -q “arduino” palavras.txt
$ echo $?
0

$ grep -q “Beaglebone” palavras.txt
$ echo $?
1

 

No exemplo acima pesquisei a string “arduino” com o parâmetro -q (modo silencioso) e peguei a saída do ultimo comando executado com (echo $?), logo em seguida pesquisei por “Beaglebone” como não existe a saída foi 1.

 

Vou brincar com outros parâmetros. Desta vez vou criar mais 2 arquivos sistema.txt e hardware.txt, e também copiar a saída do dmesg para dmesg.log e brincar com estes caras.

 

 

Preparo os arquivos:

 
$ echo -ne “Linux Ubuntu\nLinux Debian\nLinux Mint\nLinux CentOS\nRaspbian\nYocto RaspberryPI\nBuildroot RaspberryPI\n” > sistema.txt

$ echo -ne “ARM 1176JZF\mARM Cortex-A7\nBCM2835\nBCM2836\nBeaglebone Black\nAM3358\n” > hardware.txt

$ dmesg > dmesg.log

 

 

Eu criei sistema.txt e hardware.txt com palavras aleatórias.

 

Agora eu quero pesquisar em qualquer arquivo e que contenha a string “Raspberry”.

 

$ grep “Raspberry” *
palavras.txt:RaspberryPI
palavras.txt:Raspberry PI
palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

$ grep “Raspberry” ./*
./palavras.txt:RaspberryPI
./palavras.txt:Raspberry PI
./palavras.txt:Raspberry B PI
./sistema.txt:Yocto RaspberryPI
./sistema.txt:Buildroot RaspberryPI

 

Os demais parâmetros anteriores se aplicam aqui também.

 

$ grep -n “Raspberry” *
palavras.txt:5:RaspberryPI
palavras.txt:6:Raspberry PI
palavras.txt:7:Raspberry B PI
sistema.txt:6:Yocto RaspberryPI
sistema.txt:7:Buildroot RaspberryPI

 

 

Agora se eu criar um diretório exemplo/ e mover o palavras.txt para ele será que vai encontrar a string “Raspberry” nele ainda?

 

$ mkdir exemplo && mv palavras.txt exemplo/
$ grep “Raspberry” *
grep: exemplo: Is a directory
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

 

Ele avisa que existe um diretório onde esta sendo feita a pesquisa, para que ele acesse o(s) diretório(s) deve-se passar o parâmetro -r para recursividade.

 

$ grep -r “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

 

As vezes só interessa saber a ocorrências mas não o arquivo.

$ grep -hr “Raspberry” *
RaspberryPI
Raspberry PI
Raspberry B PI
Yocto RaspberryPI
Buildroot RaspberryPI

 

 

Caso eu queira apenas saber qual arquivo contem a string mas não precisa mostrar ela.

$ grep -lr “Raspberry” *
exemplo/palavras.txt
sistema.txt

 

 

E se quiser saber os arquivos que não possuem a string pesquisada.

$ grep -Lr “Raspberry” *
dmesg.log
hardware.txt

 

 

Habilitando ou não o uso da saída colorida.

$ grep -r –color=always “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

$ grep -r –color=never “Raspberry” *
exemplo/palavras.txt:RaspberryPI
exemplo/palavras.txt:Raspberry PI
exemplo/palavras.txt:Raspberry B PI
sistema.txt:Yocto RaspberryPI
sistema.txt:Buildroot RaspberryPI

 

 

Agora com o básico de Expressões Regulares, e como exemplo usarei o dmesg.log gerado acima.

 

 

Fazendo uma busca simples pela string “usb”.

 

$ grep “usb” dmesg.log
[ 0.668550] usbcore: registered new interface driver usbfs
[ 0.668558] usbcore: registered new interface driver hub
[ 0.668582] usbcore: registered new device driver usb
[ 1.996732] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.996735] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.996737] usb usb1: Product: EHCI Host Controller
[ 1.996739] usb usb1: Manufacturer: Linux 3.13.0-37-generic ehci_hcd
[ 1.996741] usb usb1: SerialNumber: 0000:00:1d.0
[ 1.997338] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.997340] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.997342] usb usb2: Product: xHCI Host Controller
[ 1.997344] usb usb2: Manufacturer: Linux 3.13.0-37-generic xhci_hcd
[ 1.997346] usb usb2: SerialNumber: 0000:00:14.0
[ 2.000099] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[ 2.000101] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.000103] usb usb3: Product: xHCI Host Controller
[ 2.000105] usb usb3: Manufacturer: Linux 3.13.0-37-generic xhci_hcd
[ 2.000107] usb usb3: SerialNumber: 0000:00:14.0
[ 2.308561] usb 1-1: new high-speed USB device number 2 using ehci-pci
[ 2.440791] usb 1-1: New USB device found, idVendor=8087, idProduct=8000
[ 2.440794] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.712387] usb 1-1.5: new full-speed USB device number 3 using ehci-pci
[ 2.805614] usb 1-1.5: New USB device found, idVendor=0cf3, idProduct=0036
[ 2.805616] usb 1-1.5: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.880293] usb 1-1.7: new high-speed USB device number 4 using ehci-pci
[ 2.972951] usb 1-1.7: New USB device found, idVendor=0bda, idProduct=0129
[ 2.972954] usb 1-1.7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2.972956] usb 1-1.7: Product: USB2.0-CRW
[ 2.972958] usb 1-1.7: Manufacturer: Generic
[ 2.972959] usb 1-1.7: SerialNumber: 20100201396000000
[ 3.044205] usb 1-1.8: new high-speed USB device number 5 using ehci-pci
[ 3.201201] usb 1-1.8: New USB device found, idVendor=0c45, idProduct=64af
[ 3.201203] usb 1-1.8: New USB device strings: Mfr=2, Product=1, SerialNumber=0
[ 3.201205] usb 1-1.8: Product: Laptop_Integrated_Webcam_HD
[ 3.201206] usb 1-1.8: Manufacturer: CN0Y3PX8724873AGB17FA01
[ 14.243360] usbcore: registered new interface driver btusb
[ 14.274681] usbcore: registered new interface driver rts5139
[ 14.624063] input: Laptop_Integrated_Webcam_HD as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1.8/1-1.8:1.0/input/input13
[ 14.624169] usbcore: registered new interface driver uvcvideo
[ 14.761434] usbcore: registered new interface driver ath3k
[ 14.781788] usb 1-1.5: USB disconnect, device number 3
[ 14.981529] usb 1-1.5: new full-speed USB device number 6 using ehci-pci
[ 20.075906] usb 1-1.5: New USB device found, idVendor=0cf3, idProduct=0036
[ 20.075911] usb 1-1.5: New USB device strings: Mfr=0, Product=0, SerialNumber=0

 

Bastante coisa. Vou trabalhar em cima extendendo os recursos de Regex da expressão, por exemplo quero somente as linhas que contenham usb2 OU usb3, aplicando a lógica OR.

 
$ grep -E “usb2|usb3” dmesg.log
[ 1.997338] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.997340] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.997342] usb usb2: Product: xHCI Host Controller
[ 1.997344] usb usb2: Manufacturer: Linux 3.13.0-37-generic xhci_hcd
[ 1.997346] usb usb2: SerialNumber: 0000:00:14.0
[ 2.000099] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[ 2.000101] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2.000103] usb usb3: Product: xHCI Host Controller
[ 2.000105] usb usb3: Manufacturer: Linux 3.13.0-37-generic xhci_hcd
[ 2.000107] usb usb3: SerialNumber: 0000:00:14.0

 

 

Vou pesquisar por uma linha que contenha “usb” E tambem “Product:”, vou aplicar a logica AND.

 

$ grep -E “usb.*Product:” dmesg.log
[ 1.996737] usb usb1: Product: EHCI Host Controller
[ 1.997342] usb usb2: Product: xHCI Host Controller
[ 2.000103] usb usb3: Product: xHCI Host Controller
[ 2.972956] usb 1-1.7: Product: USB2.0-CRW
[ 3.201205] usb 1-1.8: Product: Laptop_Integrated_Webcam_HD

 

 

Mas eu quero só com “usb2” ou “usb3” casando com “Product:”.

 

$ grep -E “usb(2|3).*Product:” dmesg.log
[ 1.997342] usb usb2: Product: xHCI Host Controller
[ 2.000103] usb usb3: Product: xHCI Host Controller

 

 

Posso aplicar varias combinações com Expressões Regulares.

 

 

Posso criar um arquivo com o meu Regex e usar ele como padrão, alias, podemos colocar varias combinações neste arquivo.

 

 

$ echo “usb(2|3).*Product:” > meu_regex
$ cat meu_regex
usb(2|3).*Product:
$ grep -f meu_regex -E dmesg.log
[ 1.997342] usb usb2: Product: xHCI Host Controller
[ 2.000103] usb usb3: Product: xHCI Host Controller

 

 

Vou usar o grep direto e usar ele com qualquer comando um pipe e logo em seguida o grep.

 

Vou fazer uma pesquisa no /var/log/syslog.1 por quantas ocorrências da string “info” usando cat e o grep direto.

 

$ time cat /var/log/syslog.1 | grep -c “info”
1027

real 0m0.011s
user 0m0.005s
sys 0m0.008s
$ time grep -c “info” /var/log/syslog.1
1027

real 0m0.009s
user 0m0.009s
sys 0m0.000s

 

 

Para desempenho de uso em grande escala do grep é setar LC_ALL=C antes:

$ strace -c grep -c “info” /var/log/syslog.1
187
% time seconds usecs/call calls errors syscall
—— ———– ———– ——— ——— —————-
27.03 0.000160 11 14 mmap
14.19 0.000084 8 10 read
13.18 0.000078 13 6 open
11.15 0.000066 8 8 mprotect
9.63 0.000057 11 5 5 access
5.57 0.000033 4 9 fstat
4.56 0.000027 3 9 close
3.55 0.000021 11 2 munmap
3.55 0.000021 7 3 brk
3.04 0.000018 18 1 execve
1.52 0.000009 9 1 write
1.35 0.000008 4 2 1 ioctl
1.35 0.000008 8 1 openat
0.34 0.000002 2 1 arch_prctl
—— ———– ———– ——— ——— —————-
100.00 0.000592 72 6 total

$ export LC_ALL=C

$ strace -c grep -c “info” /var/log/syslog.1
187
% time seconds usecs/call calls errors syscall
—— ———– ———– ——— ——— —————-
20.07 0.000114 11 10 read
16.73 0.000095 8 12 mmap
16.20 0.000092 12 8 mprotect
6.87 0.000039 8 5 5 access
6.16 0.000035 9 4 open
6.16 0.000035 18 2 munmap
5.99 0.000034 34 1 execve
5.46 0.000031 10 3 brk
4.40 0.000025 4 7 close
3.87 0.000022 3 7 fstat
2.99 0.000017 17 1 write
2.64 0.000015 15 1 openat
1.94 0.000011 6 2 1 ioctl
0.53 0.000003 3 1 arch_prctl
—— ———– ———– ——— ——— —————-
100.00 0.000568 64 6 total

 

 

Novamente verificando o tempo apos setar LC_ALL=C.

$ time grep -c “info” /var/log/syslog.1
187

real 0m0.003s
user 0m0.003s
sys 0m0.000s
$ time cat /var/log/syslog.1 | grep -c “info”
187

real 0m0.005s
user 0m0.000s
sys 0m0.009s

 

 

No meu syslog.1 não deu tanta diferença, mas fazer essa varredura em um aquivo de 500M você notará uma grande diferença.

 

 

Até Breve.

 

command-cli

 

Fonte

Fonte2

 

linha-de-comando
.

Aprenda a Trabalhar com o Terminal do Linux

 

um-idealista

 

Fev – 2017

Ubuntu Aprenda a Trabalhar com o Terminal do Linux (Português do Brasil)

Trabalhar com a linha de comando não é uma tarefa tão assustadora assim. Não tem nenhum conhecimento especial necessário para usar a linha de comando no terminal, porque o terminal é um programa como qualquer outro.

A maioria das coisas em Linux podem ser feitas usando o terminal. Tem ferramentas gráficas para a maioria dos programas, mas, às vezes eles não são suficientes. Aí que o terminal é útil.

Este artigo foi elaborado em máquina virtual usando Ubuntu Mate, um dos melhores sistemas da atualidade.

Para este artigo funcionar direito, deve-se ir lendo e executando imediatamente no terminal.

Depois descanse a mente saia do navegador então volte aqui e faça novamente. Sempre que achar necessário, volte e refaça o caminho. É como na vida.

##

Começando

Primeiro de tudo, é bom criar um usuário que não seja administrador e assim brincar com o terminal sem medo de danificar o sistema.

Vá em configurações > Administração > usuários e grupos (users and groups).

Na janela configuração de usuários clique no botão adicionar, digite tua senha e escreva um novo nome de usuário por exemplo:

alunox

Crie uma senha para alunox, salve feche e faça logout.
Procure o nome alunox fazendo login como alunox usando a nova senha.
Este usuário terá direitos restritos e quando você voltar a usar seu usuário login oficial tudo estará bem.

Não esqueça:

O terminal diferencia letras maiúsculas de minúsculas.

Nome de alguns símbolos

# – O nome deste símbolo é Cerquilha ou Cardinal
´ – Acento agudo
^ – Acento circunflexo
~ – Til
” – Aspas
/ – Barra
\ – Barra invertida
– Traço

Comando de teclado
Abrir aplicativos
alt + F2

Abrir o terminal
crtl+alt+t

Sair do terminal digite:
exit

Aperte enter

###

Trabalhando com o terminal

Abra o terminal
ctrl+alt+t

Vamos saber que dia é hoje. Digite:
date

Aperte Enter.

Agora vamos ver o calendário. Digite:
cal

Aperte enter. O resultado será parecido com isto:

:~$ cal
Fevereiro 2017
Do Se Te Qu Qu Se Sá
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28

Abrir uma pasta
cd

Aperte Enter

finger usuário: exibe informações sobre o usuário indicado. Digite:

finger

Aperte Enter.

O comando cd:

Sintaxe de uso cd:
cd [-L|[-P [-e]]] [dir]

cd é um comando para acessar/navegar entre diretórios.

cd .. é para sair de diretório, note que os dois pontos estão separados do comando.

Normalmente vai utilizá-lo assim:
cd caminho_da_pasta/

Exercício:

Abra o terminal com ctrl+alt+t escreva:
pwd

O resultado será:

~$ pwd
/home/dt

Então usando pwd você nunca se perde. O pwd te diz aonde você está. Mas, o que existe em /home/dt ? O que procuro está em /home/dt/ ?
Para saber o que existe em /home/dt/ usa-se ls.

digite:
ls

O resultado será parecido com este abaixo:

$ ls
Área de Trabalho Música
deja-dup Público
Documentos Vídeos
Downloads
Imagens
Modelos

Sabendo onde estamos e o que existe lá vamos para a Área de Trabalho. Digite:
cd Área\ de\ Trabalho

Aperte enter e você estará na Área de Trabalho.

Agora digite:
cd ..

Aperte enter e você volta a pasta anterior.

Na pasta onde você está, a pasta home, crie um arquivo de texto chamado leitura-semanal com o comando touch. Digite:
touch leitura-semanal.txt

Escreva neste arquivo pelo terminal. Digite:

echo “minha primeira linha” > leitura-semanal.txt
echo “minha segunda linha” >> leitura-semanal.txt
echo “minha terceira linha” >> leitura-semanal.txt

Agora usando mouse vai lá e abre o arquivo com dois cliques e veja se funcionou. 🙂

Agora vamos ver o que está escrito no arquivo de texto sem precisar abrir digite:
cat leitura-semanal.txt

Legal não é?

Agora faça uma cópia do arquivo leitura-semanal. Digite:

cp leitura-semanal.txt leitura-semanal_copia.txt

Abra a cópia para ver se o que está escrito na cópia confere com o arquivo original.

cat leitura-semanal_copia.txt

Pois bem, agora vá com o mouse no arquivo e dê dois cliques e confira novamente.

Agora remova o arquivo leitura-semanal.txt

rm leitura-semanal.txt

Vamos remover também a cópia que criamos

rm leitura-semanal_copia.txt

###

Caminho das Pastas – Normalmente quando você está acessando uma pasta via linha de comando, o caminho é exibido da seguinte maneira:

nome_usuario@nome_do_computador ~/caminho_da_pasta $

Quando abre o terminal, com ctrl+alt+t o caminho padrão é:

cd /home/$USERNAME/

Quando abre o terminal, com o mouse o caminho padrão é:
cd Área\ de\ Trabalho

$USERNAME representa o nome do seu usuário.

Perceba no caminho acima, que existe um ~/ antes do caminho da pasta, isso significa que você está na pasta /home/$USERNAME/ que é resumido em ~/.

Se não souber o caminho real da pasta, basta digitar cd, dar um espaço e pressionar “TAB” duas vezes rapidamente, com isso será possível visualizar todas as pastas disponíveis para acesso dentro da pasta em que você está.

Exercício:

Abra o terminal crtl+alt+t digite cd dê um espaço e aperte rapido a tecla “Tab” duas vezes.

As pastas são delimitadas por barras (/), por exemplo:

Acessa a pasta raiz do sistema, ou seja, a primeira pasta que pode ser acessada por linha de comando dentro do seu Ubuntu.

cd /

Tentando acessar a pasta “etc” que está dentro da “/” (raiz). Digite:

cd /etc/

Seguindo em frente, acesse a pasta “seu usuário” que está dentro da pasta “home” que está dentro da “/” (Raiz) digite:

cd /home/”seu usuário” /

Note as duas aspas no caminho da pasta “seu usuário”, isso serve para escapar os caracteres inválidos que possam existir no nome da pasta, por exemplo: O espaço. Mais explicações adiante mas antes vamos criar uma pasta.

Crie uma pasta chamada “conto” na Área de Trabalho, abra o terminal (ctrl+alt+t) e digite:

cd Área\ de\ Trabalho

Agora crie a pasta conto. Digite:

mkdir conto

Aperte enter

Vamos entrar na pasta conto? Então digite:

cd conto

Aperte enter.

Agora que estamos na pasta contos da Área de Trabalho, iremos criar um arquivo de texto dentro dela. Digite:

touch conto-semanal.txt

Agora vai lá com o mouse mesmo e clica duas vezes na pasta. E aí? 😉

Vamos em frente. Como excluir esta pasta conto? Digite:

cd – (volta uma pasta)

Voltamos uma pasta “cd -“, então estamos na Área de Trabalhos. Assim informa o terminal. Para apagar a pasta conto digite:

rm -r conto

Desta forma “rm -r”, excluimos a pasta e o texto que criamos. Note que não vai nada para a lixeira. Excluir é diferente de apagar. Os apagados ainda existem na lixeira mas, os excluídos, não existem em lugar nenhum.

Profunda filosofia.

ESCAPANDO de CARACTERES INVÁLIDOS

Existem duas formas de fazer isso, uma é com barras invertidas e a outra colocando o nome da pasta entre aspas, veja outro exemplo:

cd /home/conto/Área\ de\ trabalho/

Antes de cada espaço coloco uma barra invertida (\), assim consigo escapar os espaços para que o terminal entenda.

Para voltar para a pasta anterior basta digitar “cd ..” e pressionar “Enter”, por exemplo, se você estiver na pasta:

seu_usuario@seu_computador ~/Área de trabalho $

(Área de trabalho) Basta digitar:

cd ..

E aperte enter, para voltar na pasta “~/” (/home/seu_usuario/).

ls Lista aquivos ou pasta de um determinado diretórios.

lsusb Lista os periféricos que estão conectados na porta usb.

clear Limpa a “tela” do terminal

cp Comando para copiar um arquivo ou diretório para um outro local

sudo O comando sudo é um dos mais utilizados, faz requerimento de superusuário e requer senha. Digite:

sudo apt update && sudo apt upgrade

sudo su Após digitar a senha todas as funções realizadas no terminal estará sendo feita como superusuário, prática não muito recomendada.

shutdown Desliga o computador com intervalo de tempo.

shutdown -h now Desliga o computador imediatamente.

sudo groupadd -g 10 escritorio Cria um grupo chamado escritório com um número de identificação 10.

sudo groupdel escritorio Deleta o grupo denominado escritório.

groupdel Deleta um determinado grupo.

userdell Exclui um determinado usuário

sudo userdell -r nome_do_usuario A opção -r exclui o diretório do usuário

Sempre que você precisar de ajuda para saber a sintaxe de um comando no seu Ubuntu, basta digitar — help na frente do mesmo, exemplo uma ajuda para executar o comando ls (que faz a listagem de pastas dentro de um diretório) vai retornar vários exemplos de utilização do comando, além da sintaxe e tudo mais, .

ls –help

Além da ajuda acima, você também pode digitar:

man comando

Listando comandos

Agora que você já sabe abrir pastas no terminal do seu Ubuntu, saiba o Ubuntu é seu amigo e quer que você digite o comando da maneira mais fácil possível. Se você começar a digitar o nome do comando e esquecer o restante, basta pressionar a tecla “TAB” duas vezes rapidamente e o Ubuntu irá listar todas as possibilidades que iniciam com aquele termo.

LS (Listando pastas)

o comando ls lista as tudo que está dentro das pastas que você está. Ao abrir o terminal e digitar ls e ver o que será apresentado.

Com isso fica muito difícil não descobrir o nome de uma pasta ou arquivo que está dentro da pasta na qual você está. Note que também é possível listar o nome de pastas especificando um caminho, para isso basta digitar:

ls /caminho/que/deseja/

GREP (filtrando os valores)

“grep” ajuda a buscar um resultado quando estes são muito extensos.

Se você está procurando o nome de um arquivo chamado “xyz” dentro de uma pasta com 14.000 arquivos, para isso basta digitar:

ls /caminho/que/deseja/ | grep xyz

Mais um exemplo, digite:

ls /etc/ | grep ini

o grep lista todas as pastas que contém “ini”, ele ainda adiciona uma cor diferenciada no termo pesquisado.

Se você tiver apenas uma idéia sobre o nome do arquivo, como pesquisar?
O comando grep também aceita expressões regulares, veja o exemplo:

ls /etc/ | grep -P “[A-Za-z0-9]_.*?”

O comando acima diz:

“Grep, encontre as palavras que tenham qualquer caracter de A até Z, 0 até 9 e que sejam seguidas por um underline (_) que estão dentro da lista da pasta /etc/ retornada pelo ls”.

Du (Resumindo o uso do disco de cada arquivo)

Se você quiser saber o tamanho que uma pasta tem, da certo? É claro, basta utilizar o comando du seguido das opções s (mostra somente o tamanho) e h (tamanho legível para humanos).

Exemplo:

du -sh /home/

Retorna o tamanho da pasta home do seu Ubuntu.

Para maiores informações sobre o comando “du”, digite “du –help”.

Find (Localizar arquivos e pastas)

Pode-se pesquisar por arquivos e pastas abaixo do diretório atual que você está, veja como:

find -name “*.php”

O comando acima diz:

“find encontre qualquer arquivo (*) com nome (-name) que termine com “.php”

Pode também fazer assim:

find -name “*jpg*”

O find vai achar qualquer arquivo que tenha “jpg” independente do que estiver antes ou depois.

find -name “txt”

O arquivo precisa ter a palavra “txt”.

RM (Apagar arquivos)

Para apagar um arquivo basta digitar:

rm nome_do_arquivo

Para apagar completamente uma pasta, basta digitar:

rm -R nome_da_pasta/

Um comando perigoso é este abaixo, força o Ubuntu a apagar uma pasta, pois se você apagar uma pasta que faz parte do sistema e aí acabou. Prepare-se para reinstalar tudo. Por isto, sempre mantenha o backup de tudo que lhe for importante guardado em um periférico externo ao sistema e ao hardware do teu computador.

rm -R nome_da_pasta/

Ou:

rm -r nome_da_pasta/

Atenção Perigo!

Se for na tua Área de Trabalho e você sem querer criou uma pasta com cadeado para remover pode ser que tenha de remover forçado e este é um comando perigoso. Mas dá para executar fora das pastas e arquivos do sistema. Digite:

rm -Rf nome_da_pasta

Antes de usar o comando acima, tente este comando abaixo:

rm -f nome_da_pasta

###

PS (Visualizando processos)

Para visualizar processos no Ubuntu basta digitar:

ps -aux

Criando pastas na Área de Trabalho – Vamos criar duas pastas, pasta-teste1 e pasta-teste2. Execute o comando “mkdir”

Abra o terminal com ctrl+alt+t

O terminal vai abrir em home.

Escreva no terminal:

cd Área\ de\ Trabalho

Agora, estando na Área de Trabalho, digite:

mkdir pasta-teste1 pasta-teste2

Para remover as pastas digite:

rmdir pasta-teste1 pasta-teste2

Criando usuários por linha de comando

Basta utilizar a sequência:

sudo useradd nome_do_novo_usuario (Usuário)

sudo passwd nome_do_novo_usuario (Senha)

sudo mkdir /home/nome_do_novo_usuario (Diretório)

sudo chown newuser /home/nome_do_novo_usuario (Altera o dono do diretório)

sudo chgrp newuser /home/nome_do_novo_usuario (Altera o grupo)

Apt (Instalando programas)

Para instalar programas no seu Ubuntu basta utilizar o comando ”
APT

sudo apt install (nome[s]_do[s]_programa[s])

Para remover programas

sudo apt remove (nome[s]_do[s]_programa[s]) ; sudo apt autoremove

Este é o básico para começar a brincar com o terminal. Poupa muito tempo de pesquisa na internet.

Mantenha-se conectado. Critique. Corrija. De dicas e faça doações.

Finalizando, vamos relembrar:

~$ date # informa a data atual.

~$ cal # informa o dia atual em um calendário.

~$ pwd # nos informa onde estamos quando usamos o terminal.

~$ ls # lista o que existe onde estamos (pastas, arquivos, etc…)

~$ cd # comando para acessar/navegar entre diretórios.

~$ cd .. # para sair de diretório, note que os dois pontos estão separados do comando.

~$ ls # aquivos ou pasta de um determinado diretórios.

~$ lsusb # lista os periféricos que estão conectados na porta usb.

~$ mkdir # cria uma pasta.

~$ rmdir # remove um diretório.

~$ sudo # o comando sudo é um dos mais utilizados, faz requerimento de superusuário. Requer senha.

~$ sudo su # após digitar a senha todas as funções realizadas no terminal estará sendo feita como superusuário, prática não muito recomendada.

~$ clear # limpa a “tela” do terminal.

~$ top # exibe todos os processos que estão sendo executados, utilizando para “matar” um processo que está “travado”

~$ ps # assim como o top também lista os processos que estão sendo executados, porém para “matar” o processo necessita pegar o número do PID e utilizar o comando kill.

~$ kill # comando para “mata” um processo travado por meio do PID que pode ser adquirido por meio do comando ps.

~$ xkill # Digitando e dando enter a seta do mouse vira um X que pode ser movimentado e clicado sobre uma janela do sitema que esteja travada.

~$ cp # comando para copiar um arquivo ou diretório para um outro local

~$ mv # comando para mover um arquivo ou diretório para um outro local

~$ exit # sair do terminal, fechar o terminal

~$ shutdown #Desligar o computador

~$ shutdown -h now #desligar o computador agora

TECLAS DE ATALHO DO TERMINAL

As teclas de atalho podem ajudar muito na sua produtividade. Abaixo temos algumas teclas de atalho que podem ser utilizadas em qualquer distro Linux que use. O exercício pa usar estas teclas é o seguinte copie e cole o texto abaixo no terminal e use as teclas de atalho para percorrer, apagar, repor…

“Este texto um teste para saber como usar as teclas de atalho no terminal. Algumas palavras vamos copiar. Outras vamos colar. Outras vamos percorrer. Vamoso ao inicio do texto com ctrl+a e vamos ao fim do texto com ctrl+e. Existem vários atalhos. Ctrl+a, crtl+e, ctrl+b, etc…”

Ctrl-A: Leva o Cursor ao início de linha

Ctrl-E: Leva o cursor ao fim da linha.

Ctrl-B: Volta um caractere.

Alt-B: Uma palavra para trás.

Ctrl-F: Avança um caractere.

Alt-F: Avançar uma palavra.

Ctrl-U: Apaga todos os caracteres da posição do cursos para trás.

Ctrl-K: Apaga todos os caracteres da posição do cursor para frente.

Ctrl-Shift-V: Colar o texto da área de transferência .

Ctrl-Shift-C: Copie o texto para área de transferência.

Ctrl-L: Limpa a tela.

TAB: Completa os comandos e nomes de arquivos e diretórios.

Att Breve.