Linux – comandos e shell script – meu treceiro script Vi

MEU TERCEIRO SCRIPT USANDO VI:

.

#!/bin/bash

#####################################
# Nome do Script: MeuTerceiroScriptVi.sh
#
# Descrição:
# 1) monom nomnom monm
# 2) nomo nom nmonm
# 3) mon mobm nmobm
#
# Autor: Fulano de Tal
#
# Data da Criação: DD/MM/YYYY
#
# Email: meu_mail1@mail.com
#
#
#####################################
#
#
# Sobre este script:
# 1) nononono nono nono nonon
# 2) momo momoo momoom momom
# 3) nono mo mo momom
#
# Exemplo de uso:
# 1) nom nmomommn mmmnoomonm
# 2) monom monmomnom nmom nmonm
#
# Histórico de modificações:
# 1) Dia X - Inclusão da função de...
# 2) monm mnmonm mnomo nmoomn
#
# Comentário:
# 1) monom monom monomon
# 2) monom nomonmom nomo
#
# REGRAS DO CÓDIGO LIMPO:
#
# 1) Colocar apenas um comando por linha
#
# 2) Alinhar verticalmente comandos de um mesmo bloco
#
# 3) Deslocar o alinhamento a direita a cada novo bloco
#
# 4) Usar linhas em branco para separar trechos
#
# 5) Não ultrapassar o limite de 80 colunas por linha
#
#
# COMENTÁRIOS ESPECIAIS:
#
#
# TODO - indica uma tarefa a ser feita
# 1)
# 2)
# 3)
#
# FIXME - indica um bug conhecido que precisa ser arrumado
#
#
#
# XXX - Notícia, chama a atenção
#
#
#
#####################################

DATAHORA=$(date +%H:%M) # As variaveis sao sempre declaradas no comeco do script

clear
# Funcao de leitura data e hora
echo "==== Meu Terceiro Script Vi ===="
sleep 2
echo ""
echo "======================"
echo -n "Data e hora: $DATAHORA"
sleep 3

# Area de leitura da lista de criaturas
echo "======================"
echo "Listagem de Criaturas:"
sleep 2
echo "======================"
sort Alista_de_list.txt
sleep 5
echo ""
echo "======================"
echo "=== Últimos arquivos modificados: ==="
sleep 2
echo "======================"
ls -t # Lista arquivos e diretórios por data de modificação
echo "======================"
sleep 8
exit

.

Executo:

.

1) > MeuTerceiroScriptVi.sh

2) chmod +x MeuTerceiroScriptVi.sh

3) vi MeuTerceiroScriptVi.sh

4) Aperto Esc digito i e colo:

#!/bin/bash

#####################################
# Nome do Script: MeuTerceiroScriptVi.sh
#
# Descrição:
# 1) monom nomnom monm
# 2) nomo nom nmonm
# 3) mon mobm nmobm
#
# Autor: Fulano de Tal
#
# Data da Criação: DD/MM/YYYY
#
# Email: meu_mail1@mail.com
#
#
#####################################
#
#
# Sobre este script:
# 1) nononono nono nono nonon
# 2) momo momoo momoom momom
# 3) nono mo mo momom
#
# Exemplo de uso:
# 1) nom nmomommn mmmnoomonm
# 2) monom monmomnom nmom nmonm
#
# Histórico de modificações:
# 1) Dia X - Inclusão da função de...
# 2) monm mnmonm mnomo nmoomn
#
# Comentário:
# 1) monom monom monomon
# 2) monom nomonmom nomo
#
# REGRAS DO CÓDIGO LIMPO:
#
# 1) Colocar apenas um comando por linha
#
# 2) Alinhar verticalmente comandos de um mesmo bloco
#
# 3) Deslocar o alinhamento a direita a cada novo bloco
#
# 4) Usar linhas em branco para separar trechos
#
# 5) Não ultrapassar o limite de 80 colunas por linha
#
#
# COMENTÁRIOS ESPECIAIS:
#
#
# TODO - indica uma tarefa a ser feita
# 1)
# 2)
# 3)
#
# FIXME - indica um bug conhecido que precisa ser arrumado
#
#
#
# XXX - Notícia, chama a atenção
#
#
#
#####################################

DATAHORA=$(date +%H:%M) # As variaveis sao sempre declaradas no comeco do script

clear
# Funcao de leitura data e hora
echo "==== Meu Terceiro Script Vi ===="
sleep 2
echo ""
echo "======================"
echo -n "Data e hora: $DATAHORA"
sleep 3

# Area de leitura da lista de criaturas
echo "======================"
echo "Listagem de Criaturas:"
sleep 2
echo "======================"
sort Alista_de_list.txt
sleep 5
echo ""
echo "======================"
echo "=== Últimos arquivos modificados: ==="
sleep 2
echo "======================"
ls -t # Lista arquivos e diretórios por data de modificação
echo "======================"
sleep 8
exit

5) Aperto Esc e digito :wq

6) Executo com o comando:

./MeuTerceiroScriptVi.sh

.

Muito beleza. Tudo ok!

.

Viva o GNU/Linux! Se não gosta, que remova coreutils vai fazer o que da vida então?

.

https://pt.wikipedia.org/wiki/GNU_Core_Utilities

.

GUIA DE COMANDOS LINUX e BASH SHELL SCRIPT

Sobre os comandos do Linux

.

comando [opções] [argumentos]

.

Descrição:

Os comandos do Linux são utilizados na linha de comandos (prompt) do sistema: as opções definem parâmetros do comando e usualmente começam com o caractere "-" seguido de uma ou mais letras; e os argumentos definem dados a serem usados no processamento do comando.

.

O responsável por interpretar e executar um comando é o shell do usuário.

.

Um comando pode ser implementado pelo próprio shell (builtin command) ou pode ser uma aplicação presente em um dos diretórios do sistema como, por exemplo, /bin, /sbin, /usr/bin, etc.

.

Atualmente, acho que existem mais de 3 mil comandos a disposição do usuário de GNU/Linux.

.

Exemplos:

Por exemplo, para listar os arquivos e os diretórios filhos do diretório atual, basta digitar:

.

ls

.

Já o comando:

.

ls -al :: Exibe informações (tamanho, dono, grupo, etc) sobre os arquivos e os diretórios (opção l) e inclui na listagem os arquivos escondidos (opção a).
Importante: os arquivos escondidos no Linux possuem nome que começam com um ponto (".")

.

As opções podem possuir um ou mais argumentos.

.

Além disso, é possível existir argumentos que não pertençam a uma opção. Observe, por exemplo, o comando abaixo.

awk -F: -farq.txt /etc/passwd

Neste caso, temos o comando awk com duas opções (F e f) e três argumentos (:, arq.txt e /etc/passwd), sendo que o último argumento não pertence a nenhuma opção (é usada pelo comando).

Para obter informações sobre algum comando do Linux, digite man seguido do nome do comando. Por exemplo, para obter uma explicação sobre o comando ls digite:

man ls

É também possível obter a lista dos parâmetros disponíveis usando o parâmetro/comando help.

Entrada e saída padrão dos comandos do Linux:

.

Temos no Linux a entrada padrão a saída padrão e a saída de erro.

.

stdin (standard input) - entrada padrão para os comandos do Linux. Normalmente, a entrada padrão é o teclado, mas é possível usar o redirecionador de saída para alterar a saída padrão.

.

Por exemplo:

.

ls > teste

.

ou

.

ls 1> teste

.

Cria o arquivo teste com o conteúdo do diretório atual.

stderr (standard error) - saída padrão para os erros encontrados durante a execução de um comando do Linux. Normalmente, a saída padrão é a tela da sessão onde o comando foi digitado, mas é possível usar o redirecionador de saída 2> para alterar a saída padrão.

.

Suponha que o diretório /meu_dir não exista. Portanto, o comando:

ls /meu_dir 2> teste

.

Cria o arquivo teste com a mensagem de erro relacionada a execução do comando acima.

.

É possível digitar mais de um comando de uma vez. Se ";" for usado para separar os comandos, então o sistema executa todos os comandos, independentemente do resultado:

man ls > teste; ls -l teste

.

Se "&&" for usado entre os comandos, um comando só é executado quando os comandos anteriores não apresentam erro:

man ls > teste && ls -l teste

.

Observações:

Neste Guia de Referências foi adotada a seguinte norma na apresentação dos comandos:

.

Opções/argumentos não obrigatórios (os usuários podem ou não digitá-los) estão entre colchetes.

argumentos obrigatórios (devem ser fornecidos pelos usuários) não são delimitados por nenhum símbolo.

.

Por exemplo, o comando:

cat [-n] arquivo

.

Possui uma opção (-n) e um argumento (arquivo), sendo que apenas o segundo deve ser obrigatoriamente informado pelo usuário.

.

Por exemplo, suponha que você queira exibir o conteúdo do arquivo teste.txt, então você pode digitar:

cat -n teste.txt

.

ou

.

cat teste.txt

.

Onde o primeiro comando numera as linhas do arquivo e o segundo comando apenas exibe o arquivo.

.

Linux comandos de manipulação de diretório

.

mkdir
cria um diretório

exemplo: mkdir docs

.

rmdir
exclui um diretorio (se estiver vazio)

.

rm -rf
exclui um diretório e todo o seu conteúdo

.

cd
entra num diretório (exemplo: cd docs) ou retorna para HOME

.

cd ~
vai direto para o diretório home do usuário logado.

.

cd -
volta ao último diretório acessado

.

pwd
exibe o local do diretório atual

.

ls
listar o conteúdo do diretório

.

ls -alh
mostra o conteúdo detalhado do diretório

.

ls -ltr
mostra os arquivos no formado longo(l) em ordem inversa(r) de data (t)

.

du -msh
mostra o tamanho do diretório em Megabytes

.

whereis
mostra onde se encontra determinado arquivo (binários)

exemplo: whereis samba

.

which
mostra qual arquivo binário está sendo chamado pelo shell quando chamado via linha de comando

.

Para obter uma listagem de diretórios em sistemas GNU/Linux, ordenados do maior para o menor, use o comando:

du -Sk | sort -nr | more

.

ou

.

du -Sh | sort -nr | more

.

SABER O TAMANHO DE CADA DIRETÓRIO OU SUBDIRETÓRIO:

.

du -ach --max-depth=1 /var/

du -ach --max-depth=1 /var/| sort -nr

du -ach --max-depth=1 /var/| sort -nr | more

.

CRIAR DIRETÓRIOS DENTRO DE DIRETORIOS:

mkdir -p /teste/teste1/teste2/teste3

.

CRIAR UMA ÁRVORE COMPLETA DE DIRETÓRIOS:

mkdir -p docs/{img/{fotos,icons,wallpapers,svg},textos/{artigos,man},tmp}

.

A REGRA AQUI É A SEGUINTE:

.

para cada pasta que conterá subpastas use "nome/{}"
dentro das chaves coloque os nomes separados por vírgula não esquecendo de usar o parâmetro '-p' no começo do comando.

.

Linux comandos para manipulação de arquivos

.

cat
mostra o conteúdo de um arquivo binário ou texto

tac
semelhante ao cat mas inverte a ordem

tail
mostra as últimas 10 linhas de um arquivo (util para ler logs)

head
mostra as primeiras 10 linhas de um arquivo

less
mostra o conteúdo de um arquivo de texto com controle

vi
editor de ficheiros de texto

vim
versão melhorada do editor supracitado

rm
remoção de arquivos (também remove diretórios)

cp
copia diretórios

'cp -r'
copia recursivamente

mv
move ou renomeia arquivos e diretórios

chmod
altera as permissões de arquivos ou directórios

chown
altera o dono de arquivos ou diretórios

cmd>txt
cria um novo arquivo(txt) com o resultado do comando(cmd)

cmd>>txt
adiciona o resultado do comando(cmd) ao fim do arquivo(txt)

touch
touch um_titulo.txt
cria um arquivo um_titulo.txt vazio; também altera data e hora de modificação para agora

> arquivo.txt
mais rápido que o touch para criação de arquivos

split
divide um arquivo

recode recodifica um arquivo ex: recode iso-8859-15..utf8 file_to_change.txt
[mc] poderoso editor de texto

.

Linux comandos para administrar

.

man
mostra informações sobre um comando

adduser
adiciona usuários

addgroup
adiciona grupos

apropos
realiza pesquisa por palavra ou string

dmesg
exibe as mensagens da inicialização(log)

du
exibe estado de ocupação dos discos/partições

find comando de busca ex: find ~/ -cmin -3

userdel
remove usuários

chfn
altera informação relativa a um utilizador

who
informa quem está logado no sistema

whoami
informa com qual usuário você está logado

passwd
modifica senha (password) de usuários

umask
define padrões de criação de arquivos e diretórios

ps
mostra os processos correntes

ps -aux
mostra todos os processos correntes no sistema

kill
manda um sinal para um processo. Os sinais SIGTERM e SIGKILL encerram o processo

killall
manda um sinal para todos os processos

su
troca para o super-usuário root (é exigida a senha)

su user
troca para o usuário especificado em 'user' (é exigida a senha)

chown
altera a propriedade de arquivos e pastas (dono)

env
mostra variaveis do sistema

.

COMANDOS PARA ADMINISTRAÇÃO DE REDE

.

ifconfig
mostra as interfaces de redes ativas e as informações relacionadas a cada uma delas

.

route
mostra as informações referentes as rotas

.

mtr
mostra rota até determinado IP

.

nmap
lista as portas de sistemas remotos/locais atras de portas abertas e pode checar sistema operacional em execução no host remoto

.

netstat
exibe as portas e protocolos abertos no sistema

.

iptraf
analisador de trafego da rede com interface gráfica baseada em diálogos

.

tcpdump
sniffer muito popular. Sniffer é uma ferramenta que "ouve" os pacotes que estão passando pela rede

.

traceroute
traça uma rota do host local até o destino mostrando os roteadores intermediários

.

nslookup
consultas a serviços DNS

.

dig
consultas a serviços DNS

.

Linux Command Line Quick Reference - Linux Comandos Guia de Referência Rápido

.

1

Linux Comandos de Informação do sistema

cat /etc/*-release # Mostra qual sistema Linux está usando - Show which version of GNU/Linux installed

uptime # Show how long the system has been running + load

hostname # Show system host name

hostname -I # Display the IP addresses of the host

last reboot # Show system reboot history

date # Show the current date and time - Mostra o dia e a hora atual

cal # Show this month's calendar - Mostra o mês do calendário que estamos

w # Display who is online - Mostra quem está online

whoami # Who you are logged in as - Mostra o nome que você está logado

.

2

Linux Comandos Hardware Information - Informação do Hardware

dmesg # Display messages in kernel ring buffer

cat /proc/cpuinfo # Display CPU information

cat /proc/meminfo # Display memory information

free -h # Display free and used memory ( -h for human readable, -m for MB, -g for GB.)

lspci -tv # Display PCI devices

lsusb -tv # Display USB devices

dmidecode # Display DMI/SMBIOS (hardware info) from the BIOS

hdparm -i /dev/sda # Show info about disk sda

hdparm -tT /dev/sda # Perform a read speed test on disk sda

badblocks -s /dev/sda # Test for unreadable blocks on disk sda

.

3

Linux Comandos Performance Monitoring and Statistics - Monitoramento estatistico de performance

top # Display and manage the top processes

htop # Interactive process viewer (top alternative)

mpstat 1 # Display processor related statistics

vmstat 1 # Display virtual memory statistics

iostat 1 # Display I/O statistics

tail 100 /var/log/messages # Display the last 100 syslog messages (Use /var/log/syslog for Debian based systems.)

tcpdump -i eth0 # Capture and display all packets on interface eth0

tcpdump -i eth0 'port 80' # Monitor all traffic on port 80 ( HTTP )

lsof # List all open files on the systemlsof

-u user # List files opened by user

free -h # Display free and used memory ( -h for human readable, -m for MB, -g for GB.)

watch df -h # Execute "df -h", showing periodic updates

.

4

Linux Comandos User Information and Management - Informações do usuário e gerenciamento

id # Display the user and group ids of your current user.

last # Display the last users who have logged onto the system.

who # Show who is logged into the system.

w # Show who is logged in and what they are doing.

groupadd test # Create a group named "test".

useradd -c "John Smith" -m john # Create an account named john, with a comment of "John Smith" and create the user's home directory.

userdel john # Delete the john account.

usermod -aG sales john # Add the john account to the sales group

.

5

Linux Comandos File and Directory Commands - Linux Comandos de arquivos e diretórios

ls -al # List all files in a long listing (detailed) format

pwd # Display the present working directory

mkdir directory # Create a directory

rm file # Remove (delete) file

rm -r directory # Remove the directory and its contents recursively

rm -f file # Force removal of file without prompting for confirmation

rm -rf directory # Forcefully remove directory recursively

cp file1 file2 # Copy file1 to file2

cp -r source_directory destination # Copy source_directory recursively to destination . If destination exists, copy source_directory into destination , otherwise create destination with the contents of source_directory .

mv file1 file2 # Rename or move file1 to file2 . If file2 is an existing directory, move file1 into directory file2

ln -s /path/to/file linkname # Create symbolic link to linkname

touch file # Create an empty file or update the access and modification times of file.

cat file # View the contents of file

less file # Browse through a text file

head file # Display the first 10 lines of file

tail file # Display the last 10 lines of file

tail -f file # Display the last 10 lines of file and "follow" the file as it grows.

.

6

Linux Comandos Process Management - Gerenciamento de processos

ps # Display your currently running processes

ps -ef # Display all the currently running processes on the system.

ps -ef | grep processname # Display process information for processname

top # Display and manage the top processes

htop # Interactive process viewer (top alternative)

kill pid # Kill process with process

HanSmi, [17.02.18 21:03]
ID of p id

killall processname # Kill all processes named

process_name_program & # Start program in the background

bg # Display stopped or background jobs

fg # Brings the most recent background job to foreground

fg n # Brings job n to the foreground

.

7

Linux Comandos File Permissions - Permissões de arquivo

U = User
G = Group
W = World
r = Read
w = write
x = execute
- = no access

.

8

Linux Comandos Networking - Gerenciamento de rede

ifconfig -a # Display all network interfaces and ip address

ifconfig eth0 # Display eth0 address and details

ethtool eth0 # Query or control network driver and hardware settings

ping host # Send ICMP echo request to hostwhois domain# Display whois information for domain

dig domain # Display DNS information for domain

dig -x IP_ADDRESS # Reverse lookup of IP_ADDRESS

host domain # Display DNS ip address for domain

hostname -i # Display the network address of the host name.

hostname -I # Display all local ip addresses

wget http://domain.com/file # Download http://domain.com/file

netstat -nutlp # Display listening tcp and udp ports and corresponding programs

.

9

Linux Comandos Archives (TAR Files) - Arquivos TAR

tar cf archive.tar directory # Create tar named archive.tar containing directory .

tar xf archive.tar # Extract the contents from archive.tar .

tar czf archive.tar.gz directory # Create a gzip compressed tar file name archive.tar.gz .

tar xzf archive.tar.gz # Extract a gzip compressed tar file.

tar cjf archive.tar.bz2 directory # Create a tar file with bzip2 compression

tar xjf archive.tar.bz2 # Extract a bzip2 compressed tar file.

.

10

Linux Comandos Instalação de pacotes

tar zxvf sourcecode.tar.gz
cd sourcecode
./configure
make
make install

.

11

Linux Comandos de busca

grep pattern file # Search for pattern in file

grep -r pattern directory # Search recursively for pattern in directory

locate name # Find files and directories by name

find /home/john -name 'prefix*' # Find files in /home/john that start with "prefix".

find /home -size +100M # Find files larger than 100MB in /home

.

12

Linux Comandos SSH Logins

ssh host # Connect to host as your local username.

ssh user@host # Connect to host as user

ssh -p port user@host # Connect to host using port

.

13

Linux Comandos Transferencia de arquivos - File Transfers

scp file.txt server:/tmp # Secure copy file.txt to the /tmp folder on server

scp server:/var/www/*.html /tmp # Copy *.html files from server to the local /tmp folder.

scp -r server:/var/www /tmp # Copy all files and directories recursively from server to the current system's /tmp folder.

rsync -a /home /backups/ # Synchronize /home to /backups/home

rsync -avz /home
server:/backups/ # Synchronize files/directories between the local and remote system with compression enabled

.

14

Linux Comandos de uso de disco - Disk Usage

df -h # Show free and used space on mounted filesystems

df -i # Show free and used inodes on mounted filesystems

fdisk -l # Display disks partitions sizes and types

du -ah # Display disk usage for all files and directories in human readable format

du -sh # Display total disk usage off the current directory

.

15

Linux Comandos navegação de diretórios

Directory Navigation

cd .. # To go up one level of the directory tree. (Change into the parent directory.)

cd # Go to the $HOME directory

cd /etc # Change to the /etc directory

.

# Linux Comandos File/Directory Basics - Comandos Básicos para Diretórios e arquivos

ls
List files

cp
Copy files

mv
Rename files

rm
Delete files

ln
Link files

cd
Change directory

pwd
Print current directory name

mkdir
Create directory

rmdir
Delete directory

.

Linux Comandos File Viewing - Visualização de arquivos

cat
View files

less
Page through files

head
View file beginning

tail
View file ending

nl
Number lines

od
View binary data

xxd
View binary data

gv
View Postscript/PDF files

xdvi
View TeX DVI files

.

Linux Comandos File Creation and Editing - Editar e criar arquivos

emacs
Text editor

vim
Text editor

umask
Set default file protections

soffice
Edit Word/Excel/ PowerPoint docs

abiword
Edit Word documents

gnumeric
Edit Excel documents

.

Linux Comandos File Properties - Propriedades de arquivos

stat
Display file attributes

wc
Count bytes/words/lines

du
Measure disk usage

file
Identify file types

touch
Change file timestamps

chown
Change file owner

chgrp
Change file group

chmod
Change file protections

chattr
Change advanced file attributes

lsattr
List advanced file attributes

.

Linux Comandos File Location - Localização de arquivos

find
Locate files

slocate
Locate files via index

which
Locate commands

whereis
Locate standard files

.

Linux Comandos File Text Manipulation - Manupulação de arquivos de texto

grep
Search text for matching lines

cut
Extract columns

paste
Append columns

tr
Translate characters

sort
Sort lines

uniq
Locate identical lines

tee
Copy stdin to a file and o stdout simultaneously

.

Linux Comandos File Compression - Compressão de arquivos

gzip
Compress files (GNU Zip)

compress
Compress files (Unix)

bzip2
Compress files (BZip2)

zip
Compress files (Windows Zip)

.

Linux Comandos File Comparison - Comparação de arquivos

diff
Compare files line by line

comm
Compare sorted files

cmp
Compare files byte
by byte

md5sum
Compute checksums

.

Linux Comandos Disks and Filesystems - Sistema de arquivos e discos

df
Show free disk space

mount
Make a disk accessible

fsck
Check a disk for errors

sync
Flush disk caches

.

Linux Comandos Backups and Remote Storage - Gerenciamento remoto e Backups

mt
Control a tape drive

dump
Back up a disk

restore
Restore a dump

tar
Read/write tape archives

cdrecord
Burn a CD

rsync
Mirror a set of files

.

Linux Comandos File/Directory Basics - Básicos para Diretórios e arquivos

ls
List files

cp
Copy files

mv
Rename files

rm
Delete files

ln
Link files

cd
Change directory

pwd
Print current directory
name

mkdir
Create directory

rmdir
Delete directory

.

LINUX GUIA RÁPIDO DE COMANDOS A A Z

.

A

abiword - editor de textos multi-plataforma.
ac - imprime estatísticas sobre o tempo de conexão dos usuários no sistema.
addgroup - cria um novo grupo de usuários.
adduser - cria um novo usuário.
alias - permite nomear um conjunto de comandos, a ser executado pelo sistema, por um único nome.
apropos - pesquisa por determina expressão nas páginas do manual do sistema.
APT - sistema para gerenciamento de pacotes no Linux.
apt-get - utilitário para manuseamento de pacotes no Linux.
aptitude - utilitário para manuseamento de pacotes no Linux.
ar - inclui/atualiza/extrai/deleta arquivos de/em um repositório de arquivos.
arch - informa a arquitetura da máquina.
arquivo - componente básico do Linux.
at - agenda tarefas a serem executadas pelo sistema.
atq - lista as tarefas agendadas com o comando at.
atrm - remove tarefas agendadas com o comando at.
awk - linguagem de processamento e procura de padrões em textos.

B

basename - exibe o nome de um arquivo removendo todos os componentes do caminho que fazem parte do nome do arquivo.
bc - linguagem de programação para operações aritméticas.
bg - coloca um processo para ser executado em segundo plano (background).
Biblioteca C - conjunto de rotinas padronizadas da linguagem de programação C.
biosdecode - decodifica informações do BIOS (Basic Input/Output System).
bzip2 - compacta/descompacta arquivos.

C

cal - exibe um calendário simplificado.
cancel - cancela impressões.
capacidades - atributos dos threads para controle de permissões.
capsh - altera/verifica as capacidades de um processo.
cat - concatena e/ou exibe um ou mais arquivos.
cd - altera o diretório atual de trabalho do usuário.
chamadas de sistema - são funções (interfaces) usadas pelos aplicativos para solicitar a execução de algum serviço ao kernel do sistema operacional.
cheese - tirar fotos ou gravar videos a partir de uma webcam.
chfn - altera as informações apresentadas pelo utilitário finger.
chgrp - altera o grupo de arquivos.
chkconfig - habilita ou desabilita serviços do sistema.
chmod - altera as permissões de arquivos.
chown - altera o dono e/ou o grupo de arquivos.
chsh - altera o shell padrão do usuário.
cksum - calcula o checksum e o número de bytes de arquivos.
clear - limpa a tela do terminal.
comandos do linux - explica o formato dos comandos do Linux.
comm - compara arquivos ordenados.
compress - compacta/descompacta arquivos.
consoles virtuais - interface do Linux com os usuários.
cotas de disco - define a quantidade de espaço em disco que cada usuário/grupo pode usar.
cp - copia arquivos.
crontab - agenda tarefas para serem executadas periodicamente.
csplit - divide um arquivo de acordo com um padrão definido.
curingas - *, ? , [ ] e { }
cut - seleciona colunas de um arquivo txt ou da entrada padrão.

D

date - exibe ou modifica a data e a hora do sistema.
dc - realiza cálculos utilizando a notação polonesa inversa.
dd - converte e copia um arquivo.
delgroup - deleta um grupo do sistema.
deluser - deleta um usuário ou um grupo do sistema.
depmod - produz arquivo contendo as dependências dos módulos.
desempenho - melhorar o desempenho do Linux.
df - exibe informações sobre os espaços livre e utilizado das partições.
diff - compara dois arquivos, em formato texto, linha a linha.
DISPLAY - variável de ambiente que define onde a saída de um aplicação gráfica deve aparecer.
distribuição Linux - coleção de aplicativos mais o kernel linux.
dmesg - mostra as mensagens da última inicialização do sistema.
dmidecode - decodifica tabelas DMI (Destktop Management Information).
dpkg - ferramenta para instalar, construir, remover e gerenciar pacotes Debian.
du - informações sobre o uso do disco.
dump - faz backup de arquivos ou de sistemas de arquivos.
dvips - converte arquivo .dvi (device independent file format) em .ps (postscript).

E

echo - escreve argumentos na saída padrão.
ELF - formato de arquivos executáveis, arquivos objetos e bibliotecas.
env - executa um programa em um ambiente modificado.
exit - provoca o término normal de um processo.
expand - converte 'tabs' em espaços.
export - comando do shell que permite configurar e compartilhar variáveis de ambiente a partir de uma mesma sessão.
expr - avalia expressões.

F

fdisk - aplicativo utilizado para particionar discos.
fg - faz com que um processo, que está sendo executado em segundo plano, passe a ser executado em primeiro plano.
file - informa o tipo do arquivo.
find - pesquisa arquivos em uma hierarquia de diretórios.
finger - exibe informações sobre um usuário.
fmt - formata textos.
free - exibe a quantidade de memória livre/usada no sistema.
fsck - verifica e repara um sistema de arquivos Linux.
fuser - identifica os processos que estão usando um determinado arquivo.

G

gcc - compilador da linguagem C e C++ para Linux.
gdb - aplicativo para depuração de programas C e C++.
getcap - informa as capacidades dos arquivos.
getty - configura os terminais de acesso.
GID - número de identificação de grupo para o kernel do Linux.
git - ferramenta de controle de versão de arquivos.
glibc - biblioteca C usada no Linux.
gpasswd - administra os grupos de usuários do sistema.
grep - procura padrões em um arquivo.
groupadd - cria um novo grupo de usuários.
groupdel - deleta um grupo de usuários.
groupmod - modifica um grupo de usuários.
groups - lista os grupos aos quais um usuário pertence.
grpconv - usa o sistema gshadow para proteger as senhas dos grupos.
grpunconv - elimina o uso do sistema gshadow de proteção de senhas.
GRUB - carregador de inicialização do Linux.
gv - aplicativo para visualização de arquivos com extensão ps (PostScript) e pdf (Portable Document Format).
gzip - compacta/descompacta arquivos.

H

hardware - opções para verificar o hardware da máquina.
hdparm - exibe/altera os parâmetros de discos SATA/IDE do sistema.
head - exibe as primeiras linhas de um arquivo texto.
help - exibe informações sobre os comandos internos do shell.
history - exibe os comando digitados pelo usuário.
hostname - mostra ou muda o nome do computador na rede.
hwclock - exibe ou modifica a data e a hora do relógio da máquina.
hwinfo - fornece informações sobre o hardware da máquina.

I

id - informa o UID, o GID e os grupos de um usuário.
ifconfig - configura interfaces de rede.
import - produz um arquivo de imagem a partir da janela visível de um servidor X.
info - ler documentos no formato info.
inicialização - como o Linux é inicializado.
init - processo de controle da inicialização do sistema.
inode - identificador de arquivo em um sistema de arquivos.
insmod - carrega módulos do kernel na memória do sistema.
install - copia arquivos alterando permissões, dono e grupo dos arquivos.
inxi - scripts com informações sobre hardware.
iostat - estatística de uso do processador e da E/S.
ipcrm - remove recurso ipc (interprocess communication).
ipcs - fornece informações sobre recursos ipc (interprocess communication).
ispell - ferramenta para correção ortográfica.

J

join - junta as linhas de dois arquivos que possuem um campo comum.

K

kernel - núcleo do Linux.
kill - envia um determinado sinal a um processo em execução no sistema.
killall - envia um determinado sinal a um conjunto de processos que usam o mesmo nome.

L

last - exibe todas as informações referentes a entrada (login) e saída (logout) de usuários do sistema.
lastb - exibe informações sobre as tentativas mal sucedidas de se logar ao sistema.
lastlog - exibe informações referentes ao último login de cada usuário.
latex - gera arquivo .dvi a partir da definição de macros TEX.
less - permite fazer a paginação de arquivos ou da entrada padrão.
lesskey - personaliza as teclas usadas no paginador less.

.

Comandos mais usados em ShellScript no GNU/Linux

.

Qual é o seu usuário?

.

Se você não tem certeza qual é o seu usuário, use o comando "whoami" sem aspas, para saber.

.

Como o prompt de usuário normal pode ser diferente para cada um, podemos em algum momento usar "prompt$" para indicar o prompt da linha de comando.

.

ESCOLHER O DIRETÓRIO ONDE COLOCAR O SCRIPT

Para que o script possa ser executado de qualquer parte do sistema, mova-o para um diretório que esteja no seu PATH. Para ver quais são estes diretórios, abra agora o terminal pelo menu do sistema e digite o comando:

echo $PATH

.

Se não tiver permissão de mover para um diretório do PATH, deixe-o dentro de seu diretório pessoal ($HOME). Digite no terminal: $HOME

.

CRIAR O ARQUIVO E COLOCAR NELE OS COMANDOS

Abra pelo menu do sistema o editor de texto gedit, pluma, leafpad, mousepad ou outro editor de textos de sua preferência para colocar todos os comandos dentro do arquivo.

.

COLOQUE A CHAMADA DO SHELL NA PRIMEIRA LINHA

A primeira linha do script deve ser:

#!/bin/bash

Para que ao ser executado, o sistema saiba que é o bash quem irá interpretar estes comandos.

.

TORNE O SCRIPT UM ARQUIVO EXECUTÁVEL

Use o seguinte comando para que seu script seja reconhecido pelo sistema como um comando executável:

chmod +x nome-do-teu-shellscript.sh

.

BASH EXECUTANDO COMANDOS

Shell script é uma linguagem de script usada em vários sistemas operacionais, com diferentes dialetos, dependendo do interpretador de comandos utilizado.

Um exemplo de interpretador de comandos é o bash, usado na grande maioria das distribuições GNU/Linux.

A maior parte dos usuários classificam shell script como uma linguagem de fácil aprendizagem. O primeiro passo é, saber o que se deseja fazer, então ver qual o código que executa este comando em shell e aí criar, basta escrever o código em algum editor de texto e salvar. Veja só que de tempos em tempos você quer saber informações do sistema.

.

AGORA ABRE O TERMINAL E DIGITA COMANDOS, POR EXEMPLO, DIGITE ESTES COMANDOS ABAIXO UM DE CADA VEZ:

echo

echo ''

echo ""

echo '#!/bin/bash'

echo "Olá!"

echo ; echo "Olá!" ; echo

echo -e 'Bom\nDia\nMundo!'

ls -t

sleep 7

echo ; echo 'Olá!' ; sleep 3 ; ls -t

free -h -t

free -th

sleep 4

date

cal

uptime

df -h

free -tmlh

whoami

pwd

ls -at

clear

whereis bash

VALOR="Linux"

echo $VALOR

echo $VALOR $VALOR

VALOR='ls -t'

$VALOR

echo $VALOR

VALOR='free -h -t'

$VALOR

echo $VALOR

echo VALOR

read VALOR (aperte a tecla enter, digite: "ls" sem aspas e aperte enter.)

$VALOR

read VALOR (aperte a tecla enter, digite: "uptime" sem aspas e aperte enter.)

$VALOR

echo ; $VALOR ; echo ; $VALOR ; echo

echo ; $VALOR ; sleep 4 ; echo ; $VALOR ; echo

unset VALOR

echo ; $VALOR

$VALOR

clear

echo -e '\nOlá!\nVamos\nSaber\nOs\nComandos\ndo\nShellscript Linux!'

clear ; echo -e '\n \nOlá!\n \nVamos\n \nSaber\n \nOs\n \nComandos\n \ndo\n \nShellscript Linux!\n'

HOJE=$(lsblk)

echo "Informação sobre dispositivos de bloco: $HOJE"

unset HOJE

echo $HOJE

echo $((2*3))

echo $((2*4-2/2+3))

VALOR=44

echo $((VALOR*1))

echo $((VALOR*2))

echo $((VALOR*3))

VALOR=$((VALOR+1))

echo $VALOR

VALOR=$((VALOR+11))

echo $VALOR

VALOR=$((VALOR+1))

echo $VALOR

VALOR=$((VALOR+11))

echo $VALOR

unset VALOR

echo $VALOR

VALOR=$(uname -a)

echo $VALOR

HOJE=$(arch)

echo $HOJE

echo "Informação sobre o kernel: $VALOR" ; echo ; echo "Informação sobre a arquitetura do sistema: $HOJE"

unset VALOR

unset HOJE

echo "Informação sobre o kernel: $VALOR" ; echo ; echo "Informação sobre a arquitetura do sistema: $HOJE"

clear

exit

.

Uma coisa interessante sobre os comandos acima, é que para estudar eles, você não precisa estar conectado a internet.

Muito bom que você digitou um comando de cada vez!!!

Saiba que já está entendendo coisas extremamente úteis para escrever shellscript usando o Bash!

Os comandos acima oferecem informações interessantes e úteis. Podemos colocar todos eles em um só script e executar. Dependendo do caso, é mais fácil que digitar um a um de cada vez toda vez que precisar.

.

SE PUDER, ANTES DE CONTINUAR EXECUTE OS COMANDOS ACIMA QUE TE CHAMARAM MAIS A ATENÇÃO DE NOVO POIS, EXECUTAR ELES É MUITO DIDÁTICO. NADA MELHOR QUE APRENDER PRATICANDO.

.

TODO SCRIPT ESCRITO PARA RODAR NO BASH COMEÇA COM:

#!/bin/bash

Após "#!/bin/bash" de um espaço entre linhas e então pode começar a digitar comandos.

.

Exemplo:

#!/bin/bash

clear

echo ; date ; echo ; sleep 4

echo ; cal ; echo ; sleep 4

echo ; uptime ; echo ; sleep 4

echo ; df -h ; echo ; sleep 4

echo ; free -html ; echo ; sleep 4

echo ; whoami ; echo ; sleep 4

echo ; pwd ; echo ; sleep 4

echo ; ls -at ; echo ; sleep 4

echo ; whereis bash ; echo ; sleep 4

echo ; echo 'Este é o fim do script 01-script.sh' ; echo ; sleep 4

exit

# Fim do script

.

ESTE SCRIPT ÚTIL E INOFENSIVO ACIMA SERÁ SALVO NA PASTA HOME, A PASTA DA CASINHA, USANDO UM EDITOR DE TEXTO COM O NOME DE:

01-script.sh

.

Posso melhorar/tornar mais amigável este script acima explicando sobre cada comando:

#!/bin/bash

clear

echo ; echo 'Hoje é data:' ; echo ; sleep 2

echo ; date ; echo ; sleep 4

echo ; echo 'Hoje pelo calendário é:' ; echo ; sleep 2

echo ; cal ; echo ; sleep 4

echo ; echo 'Esta máquina está funcionando a:' ; echo ; sleep 2

echo ; uptime ; echo ; sleep 4

echo ; echo 'Sobre o tamanho desta pasta:' ; echo ; sleep 2

echo ; df -h ; echo ; sleep 6

echo ; echo 'Sobre a memória RAM:' ; echo ; sleep 2

echo ; free -html ; echo ; sleep 6

echo ; echo 'Você está logado como:' ; echo ; sleep 2

echo ; whoami ; echo ; sleep 4

echo ; echo 'Você está em:' ; echo ; sleep 2

echo ; pwd ; echo ; sleep 4

echo ; echo 'Neste diretório/pasta tem:' ; echo ; sleep 2

echo ; ls -at ; echo ; sleep 6

echo ; echo 'O Bash está em:' ; echo ; sleep 2

echo ; whereis bash ; echo ; sleep 4

echo ; echo 'Este é o fim do script 01-script.sh' ; echo ; sleep 4

exit

# Fim do script

.

No Linux o script deve ter permissão de execução, isto pode ser feito abrindo o terminal pelo menu do sistema e executando o comando:

chmod +x 01-script.sh

.

Depois de salvo você tem que executar o arquivo, dessa forma:

./01-script.sh

.

Viu alguma utilidade neste pequeno script?

Então siga adiante.

.

IMPORTANTE:

Para estudar shell script tem que ser como usuário normal. Se você está acessando o sistema como usuário administrador (root), saia e entre como um usuário normal. É muito perigoso estudar shell usando o superusuário, você pode danificar o sistema com um comando errado.

Ok, continuemos.

.

Para exibir um manual do bash ou mesmo do comando 'chmod', digite na linha de comando:

man bash

man chmod

.

É possível executar o arquivo mesmo sem modificar a permissão de execução, por exemplo, se for um arquivo escrito para ser executado pelo bash, usar:

sh ./"Nome do arquivo, sem aspas"

.

SHELL

É importante saber o que é um Shell.

Na linha de comandos de um shell, podemos utilizar diversos comandos um após o outro, ou mesmo combiná-los numa mesma linha.

Se colocarmos diversas linhas de comandos em um arquivo texto simples, teremos em mãos um Shell Script, ou um script em shell, já que Script é uma descrição geral de qualquer programa escrito em linguagem interpretada, ou seja, não compilada.

Outros exemplos de linguagens para scripts são o PHP, Perl, Python, JavaScript e muitos outros. Podemos então ter um script em php, um script perl e assim em diante.

Uma vez criado, um ShellScript pode ser reutilizado quantas vezes for necessário.

Seu uso, portanto, é indicado na automação de tarefas que serão realizadas mais de uma vez.

Todo sistema Unix e similares são repletos de scripts em shell para a realização das mais diversas atividades administrativas e de manutenção do sistema.

Os arquivos de lote (batch - arquivos *.bat) do Windows são também exemplos de ShellScripts, já que são escritos em linguagem interpretada e executados por um Shell do Windows, em geral o command.com ou hoje em dia o cmd.exe.

Os Shells do Unix, porém, são inumeras vezes mais poderosos que o interpretador de comandos do Windows, podendo executar tarefas muito mais complexas e elaboradas.

OS SCRIPTS SHELL PODEM SER AGENDADOS PARA EXECUÇÃO ATRAVÉS DA TABELA CRONTAB, ENTRE OUTRAS COISAS.

É uma ferramenta indispensável aos administradores de sistemas Unix.

O Shell mais comum e provavelmente o que possui mais scripts escritos para ele é também um dos mais antigos e simples, o sh.

Este shell está presente em todo o sistema tipo Unix, incluído o Linux, FreeBSD, AIX, HP-UX, OpenBSD, Solaris, NetBSD, Irix, etc. Por ser o shell nativo mais comum é natural que se prefira escrever scripts para ele, tornando o script mais facilmente portável para outro sistema.

Os Shells não estão diretamente associados a um ou outro tipo de Unix, embora várias empresas comerciais tenham suas próprias versões de Shell. No software livre o Shell utilizado em um sistema em geral é exatamente o mesmo utilizado em outro. Por exemplo, o bash encontrado no Linux é o mesmo shell bash encontrado no FreeBSD e pode também facilmente ser instalado no Solaris, Windows através do Cygwin [1] ou outros sistemas Unix comerciais para passar a ser utilizado como interface direta de comandos ou como interpretador de scripts. O mesmo acontece com o tcsh e vários outros shells desenvolvidos no modelo de software livre.

.

INTERAGIR COM O USUÁRIO

.

Para o script ficar mais completo, vamos colocar uma interação mínima com o usuário, pedindo uma confirmação antes de executar os comandos.

.

#!/bin/bash

clear

echo "Vou buscar os dados do sistema. Posso continuar? [S/n] "

read RESPOSTA

test "$RESPOSTA" = "n" && exit

echo ; echo "Data e Horário:" ; echo

date

echo

echo "Uso do disco:" ; echo

df -ht

echo

echo "Usuários conectados:" ; echo

w

echo ; echo "Seu nome de login é:"

whoami

echo

exit

# Fim do script

.

O comando "read" leu o que o usuário digitou e guardou na variável RESPOSTA. Logo em seguida, o comando "test" verificou se o conteúdo dessa variável era "n". Se afirmativo, o comando "exit" foi chamado e o script foi finalizado. Nessa linha há vários detalhes importantes:

O conteúdo da variável é acessado colocando-se um cifrão "$" na frente

O comando test é útil para fazer vários tipos de verificações em textos e arquivos

O operador lógico "&&", só executa o segundo comando caso o primeiro tenha sido OK. O operador inverso é o "||"

.

MELHORAR O CÓDIGO DO SCRIPT

Com o tempo, o script vai crescer, mais comandos vão ser adicionados e quanto maior, mais difícil encontrar o ponto certo onde fazer a alteração ou corrigir algum erro. Para poupar horas de estresse, e facilitar as manutenções futuras, é preciso deixar o código visualmente mais agradável e espaçado, e colocar comentários esclarecedores.

.

#!/bin/bash

# nome-do-script - script que mostra informações sobre o sistema

# Autor: Fulano da Silva

# Pede uma confirmação do usuário antes de executar

clear

echo "Vou buscar os dados do sistema. Posso continuar? [S/n]"

read RESPOSTA

# Se ele digitou 'n', vamos interromper o script

test "$RESPOSTA" = "n" && exit

# O date mostra a data e a hora correntes

sleep 3 ; echo "Data e Horário:" ; echo

date

sleep 3

echo

# O df mostra as partições e quanto cada uma ocupa no disco
echo "Uso do disco:"

sleep 3

echo

df

echo

sleep 6

# O w mostra os usuários que estão conectados nesta máquina

echo "Usuários conectados:"

sleep 3

echo

w

sleep 3

echo

# Fim do script

.

Basta iniciar a linha com um "#" e escrever o texto do comentário em seguida. Estas linhas são ignoradas pelo shell durante a execução. O cabeçalho com informações sobre o script e seu autor também é importante para ter-se uma visão geral do que o script faz, sem precisar decifrar seu código. Também é possível colocar comentários no meio da linha # como este

.

CARACTERÍSTICAS

.

OS SCRIPTS SHELL PODEM CONTER ESTRUTURAS DE PROGRAMAÇÃO TAIS COMO:

.

ESTRUTURAS DE DECISÃO (if)

Recurso utilizado para dar sequencia em fluxos de execução baseado decisões. Cuja sintaxe é:

- Condição Verificada é o teste que definirá se controle deve ser passado para dentro do bloco then, observe que esse teste é feito sobre a saída de um comando.
- Ação são comandos a serem executados em caso verdadeiro da condição verificada.

.

OPERADORES PARA NÚMEROS

-eq Verifica se é igual,
-ne Verifica se é diferente,
-lt Verifica se é menor,
-gt Verifica se é maior,
-le Verifica se é menor ou igual,
-ge Verifica se é maior ou igual.

.

OPERADORES PARA TEXTO

!= Verifica se é diferente,
= Verifica se é igual.

.

OPERADORES LÓGICOS

! Lógica NOT,
-o Lógica OU, (OR) ou ||,
-a Lógica E, (AND) ou &&.

.

OPERADOR PARA arquivos/

-d Verifica se é diretório,
-f Verifica se é arquivo,
-e Verifica se existe.

.

Ex:

# !/bin/baxh
# Uso de Estrutura de Decisão
clear

echo 'opções'
echo '======'
echo ' -> Data do Sistema'
echo ' -> Uso do Sistema'

read opcao

if [ "$opcao" -eq 1 ]
then
echo 'Data do sistema: ' && date

elif [ "$opcao" -eq 2 ]
then

echo 'Uso do disco: ' && df -Th
fi

# Fim do script

.

ESTRUTURAS DE REPETIÇÃO (FOR)(WHILE)

.

ESTRUTURA DE REPETIÇÃO FOR

Permite que ações de iteração sejam executadas sobre determinados comandos ou variáveis até que a condição seja satisfeita.

# !/bin/bash

clear

echo "DIAS DA SEMANA"
for dia in seg ter qua qui sex sab dom
do
echo "$dia"
done

# Fim do script

.

ESTRUTURA DE REPETIÇÃO WHILE

Em situações onde sabemos até onde o loop irá realizar uma contagem o ideal é usar o for entretanto em cenarios onde a iteração deve cessar somente após se satisfazer uma condição o uso do laçõ while é mais indicado: Ex:

# /bin/bash

clear
var=1
while [ $var -le 7 ]
do
echo "Valor de var: $var"
var=$((var+1))
done

# Fim do script

.

FUNÇÕES E ARGUMENTOS

Ex:

# !/bin/bash
# REALIZAR BACKUP DO DIR

echo -e " \033[1;33m Digite o caminho de origem.: \033[0m "
read DIR_ORIGEM

clear

echo -e " \033[1;34m Digite o caminho de destino.: \033[0m "
read DIR_DESTINO

clear

verifica_argumentos(){

if [ $# -lt 1 ];
then
echo "Faltou informar um dos argumentos (parametros) necessarios!"
exit 1
fi
}

copia_arquivos(){

verifica_argumentos

clear

echo "Realizando backup..."

#Verificando se o dir de destino existe

if ! [ -d $DIR_DESTINO ]
then
mkdir $DIR_DESTINO
echo "Diretorio de Destino Criado"
fi

#COPIANDO ARQUIVOS

for arq in `ls $DIR_ORIGEM`
do
cp /$DIR_ORIGEM/$arq $DIR_DESTINO/$arq.bak
done

}

copia_arquivos

# Fim do script

DEFINIÇÕES DE VARIÁVEIS E ESCOPO DESTAS

Variáveis são definidas pela nomenclatura NOME_VARIAVEL="Valor da Variável". O valor pode ser tanto numérico quanto texto.

Nome="Jose"

Se quisermos acessá-la, basta fazer referência a ela com o caractere $ (cifrão) antes do nome: o comando echo $Nome, por exemplo, retornará a palavra "Jose".

Se quiser sabe informações sobre os sistemas de arquivo nos quais cada ARQUIVO reside ou, por padrão, sobre todos os sistemas de arquivos posso abrir um terminal e digitar:

VarInfo="df -h"

Depois digito no terminal "$VarInfo" sem aspas.

.

VARIÁVEIS DE AMBIENTE

As variáveis de ambiente independem da definição do usuario. Elas são criadas automaticamente, no momento em que se faz o login no sistema.

Ex:

PATH: define diretórios de procura por programas executados no shell;
USER: informa o nome do usuário do shell;
HOME: informa o caminho do diretório home do usuário;
PWD: diretório atual;

.

As variáveis são a base de qualquer script. É dentro delas que os dados obtidos durante a execução do script serão armazenados. Para definir uma variável, basta usar o sinal de igual "=" e para ver seu valor, usa-se o "echo":

.

Execute estes comandos abaixo no terminal:

.

VARIAVEL="um dois tres"

echo $VARIAVEL

echo $VARIAVEL $VARIAVEL

.

Para remover a variável acima:

unset VARIAVEL

.

Teste:

echo $VARIAVEL

.

É possível armazenar a saída de um comando dentro de uma variável. Ao invés de aspas, o comando deve ser colocado entre "$(...)", execute no terminal os comandos abaixo:

HOJE=$(date)

echo "Hoje é: $HOJE"

unset HOJE

echo $HOJE

HOJE=$(ls)

echo "O conteúdo desta pasta tem: $HOJE"

unset HOJE

echo $HOJE

HOJE=$(free -hmt)

echo "Informando sobre a memória desta máquina: $HOJE"

unset HOJE

echo $HOJE

.

Exemplos de uso do shell script:

Apagar arquivos velhos - Apagar periodicamente arquivos mais velhos que 30 dias do diretório /tmp:

#!/bin/bash

cd /tmp
find . -type f -mtime +30 -delete

Este seria o conteúdo de um shell script que sempre que fosse executado apagaria arquivos com data de modificação maior que 30 dias a partir do diretório /tmp do sistema de arquivos.

Notem que ele é nada mais do que uma associação de 2 comandos (cd e find) em um arquivo para facilitar a repetição da tarefa. Este poderia ser, por exemplo, o conteúdo do arquivo /bin/limpatmp.sh e poderíamos chamar este script pela linha de comandos sempre que desejássemos repetir esta ação:

$ limpatmp.sh

Onde o símbolo "$" representa o prompt de comandos. Do ponto de vista do usuário este seria mais um comando disponível para uso.

Os scripts em shell são também muito empregados junto à inicialização do sistema (para auto-iniciar tarefas) ou como mini-aplicativos, que facilitam tarefas dos usuários, tais como montagem de dispositivos, menus de ajuda, etc.

Sua primeira linha obrigatoriamente começa com um "#!" (que não se deve confundir com um comentário qualquer, pois realmente é uma exceção; este par se chama, em inglês, de shebang), informando diretamente ao núcleo qual interpretador ele deverá usar, juntamente com seu caminho, de acordo com a necessidade de cada caso. Exemplo:

#!/bin/bash

Em seguida, são adicionados os comandos desejados, um por linha, ou separados por ponto e vírgula. Exemplo:

mount -t reiserfs /dev/hda1 /mnt/hda1
ls /mnt/hda1
cp -r /mnt/hda1/* /home/user/backup
umount /dev/hda1

Por fim, dá-se a permissão de execução a este arquivo de texto simples ("chmod +x arquivo").

.

DATA ANTERIOR

.

#!/bin/bash

# Função em Bash para retornar a data anterior, levando em conta o mês e ano.

fn_data_anterior()
{
DIA=$D
MES=$M
ANO=$A

# Dado DIA, MES e ANO numéricos, obtém a data do dia anterior

DIA=`expr $DIA - 1`
if [ $DIA -eq 0 ]; then
MES=`expr $MES - 1`
if [ $MES -eq 0 ]; then
MES=12
ANO=`expr $ANO - 1`
fi
DIA=`cal $MES $ANO`
DIA=`echo $DIA | awk '{ print $NF }'`
fi
}

ano=`date +%Y`;
mes=`date +%m`;
let dia=10\#`date +%d`;

if (( $dia". Para guardar a saída do comando anterior no arquivo "saida", basta fazer:

cat /etc/passwd | grep root | cut -c1-10 > saida

cat saida

.

O COMANDO TEST

O canivete suíço dos comandos do shell é o "test", que consegue fazer vários tipos de testes em números, textos e arquivos. Ele possui várias opções para indicar que tipo de teste será feito, algumas delas:

-lt Núm. é menor que (LessThan)

-d É um diretório

-gt Núm. é maior que (GreaterThan)

-f É um arquivo normal

-le Núm. é menor igual (LessEqual)

-r O arquivo tem permissão de leitura

-ge Núm. é maior igual (GreaterEqual)

-s O tamanho do arquivo é maior que zero

-eq Núm. é igual (EQual)

-w O arquivo tem permissão de escrita

-ne Núm. é diferente (NotEqual)

-nt O arquivo é mais recente (NewerThan)

= String é igual

-ot O arquivo é mais antigo (OlderThan)

!= String é diferente

-ef O arquivo é o mesmo (EqualFile)

-n String é não nula

-a E lógico (AND)

-z String é nula

-o OU lógico (OR)

.

SCRIPT QUE TESTA ARQUIVOS

Tente fazer um script "testa-arquivos", que pede ao usuário para digitar um arquivo e testa se este arquivo existe. Se sim, diz se é um arquivo ou um diretório.

.

CONCEITOS MAIS AVANÇADOS

.

If, for e while

.

Assim como qualquer outra linguagem de programação, o shell também tem estruturas para se fazer condicionais e loop. As mais usadas são if, for e while.

.

Então daqui por diante, sabemos o básico, o necessário para se fazer um script de funcionalidade mínima. E este mínimo pode fazer coisas incríveis.

.

if COMANDO
then
comandos
else
comandos
fi

# Fim do script

.

for VAR in LISTA
do
comandos
done

# Fim do script

.

while COMANDO
do
comandos
done

# Fim do script

.

Diferente de outras linguagens, o if testa um comando e não uma condição. Porém como já conhecemos qual o comando do shell que testa condições, é só usá-lo em conjunto com o if. Por exemplo, para saber se uma variável é maior ou menor do que 10 e mostrar uma mensagem na tela informando:

.

if test "$VARIAVEL" -gt 10
then
echo "é maior que 10"
else
echo "é menor que 10"
fi

# Fim do script

.

Há um atalho para o test , que é o comando [. Ambos são exatamente o mesmo comando,
porém usar o [ deixa o if mais parecido com o formato tradicional de outras linguagens:

.

if [ "$VARIAVEL" -gt 10 ]
then
echo "é maior que 10"
else
echo "é menor que 10"
fi

# Fim do script

.

Se usar o [, também é preciso fechá-lo com o ], e sempre devem ter espaços ao redor. É recomendado evitar esta sintaxe para diminuir suas chances de erro.

.

Já o while é um laço que é executado enquanto um comando retorna OK. Novamente o test é bom de ser usado. Por exemplo, para segurar o processamento do script enquanto um arquivo de lock não é removido:

.

while test -f /tmp/lock
do
echo "Script travado..."
sleep 1
done

# Fim do script

.

E por fim, o for percorre uma lista de palavras, pegando uma por vez:

for numero in um dois três quatro cinco
do
echo "Contando: $numero"
done

# Fim do script

.

Uma ferramenta muito útil para usar com o for é o seq, que gera uma seqüência numérica.

.

Para fazer o loop andar 10 passos, pode-se fazer:

for passo in $(seq 10)

.

O mesmo pode ser feito com o while, usando um contador:

i=0
while test $i -le 10
do
i=$((i+1))
echo "Contando: $i"
done

# Fim do script

.

E temos ainda o loop infinito, com condicional de saída usando o "break ̈:
while :

do
if test -f /tmp/lock
then
echo "Aguardando liberação do lock..."
sleep 1
else
break
fi
done

# Fim do script
.

Até Breve

.

Fonte: https://semanickz.wordpress.com/2018/02/22/comandos-mais-usados-em-shellscript-linux/

.

🙂

.

A força

Lágrimas escorreram dos meus olhos e não tentei disfarçar.

Estou doente.

O sofrimento me fez a pessoa que sou.

Um grão de poeira solitário, à deriva, flutuando, sem vínculo com nada nem com ninguém.

Ambiciono o sossego.

Sonolentos amanheres.

Longas madrugadas silenciosas e produtivas.

Tardes preguiçosas.

Noites paradas.

Ir trabalhar calada.

“Bom dia fulana(o)”

“Tchau.”

“Eu não me lembro.”

Fique você com o teu ouro.

Com tuas terras.

Com teus carrões.

A bicicleta é o que precisa meus pulmões.

Uma riqueza de 5 anos bebendo todo dia litros de malte escocês matou meu querido marido.

Cirrose.

Lágrimas escorrem dos meus olhos e não tento disfarçá-las.

O sofrimento me faz a pessoa que sou.

Um grão de poeira solitário, à deriva, flutuando, sem vínculo com nada nem com ninguém.

Isto é tão bom.

Eu quero apenas ver as crianças crescer por mais um tempo.

Abraçar elas, observar seus olhos sorrindo.

Preciso deste sossego.

Minha fúria é terrível.

Eu mato sem arrependimentos.

Por isto abraço a paciência, a tolerância.

Outro dia eu vi você tão triste naquele carro importado.

Fiquei feliz por nossos caminhos nunca terem se cruzado.

Nada posso fazer e mesmo que pudesse, não faria nada por você.

Este caminho glorioso é todinho teu.

Roupas de grife, jóias, Ibisa, etc…

No final, a idade, o tempo lhe reduzirá a uma boneca mal feita de barro.

Os predadores, carniceiros e piratas roubarão todos os teus tesouros.

E em muito pouco tempo será para sempre esquecida(o).

Não fique triste você não estará sozinha(o).

.

Os Aprisionados

.

Após a pessoa se reconhecer prisioneiro, começa a pensar.

Sair deste mundo, deixar este quarto assustador.

Voltar a selva cruel aterrorizante.

Achar outro lugar.

Pegar uma estrada qualquer e ir.

Mas o cansaço retém gente.

O conforto implora por permanecer.

Neste mundo, investir tudo que tem em um único lugar, é a melhor forma de proteger suas posses de umas pessoas de má fé.

Porém, isto torna quem tem, um prisioneiro.

A pessoa se torna um guardião pleno.

Guardião de bens materiais.

Guardião de memórias.

Guardião de pessoas, que precisam de um pedaço do mundo para crescer e estar.

Aí, é adeus a estrada.

Acabam as opções.

A pessoa fica irremediavelmente presa aonde está.

Se assim acontece com alguém, a única forma de correr o mundo é através da mente.

Pelo pensamento.

E o pensar humano é tão limitado.

Existem imensas possibilidades de pensar.

Mergulhar nos caminhos da filosofia é muito bom nesta situação.

Aí a pessoa vai trabalhando a mente.

Aprende, entende algo de filosofar.

Dia a dia divertindo-se sem cessar.

Então encontra limites.

Paredões, barreiras, falésias que não permitem ir em frente.

Para ultrapassar estes obstáculos uma força mental absurda é necessária, e a cada obstáculo, aprende-se algo novo e aparecem novas barreiras.

E depois de um tempo com uma boa quantidade de conhecimento acumulado, todo ele serve apenas para executar com maestria e consciência coisas agora para a pessoa que aprendeu… triviais do dia a dia.

Anos de estudo e pensar, apenas para executar com maestria coisas simples do dia a dia, sem mudar nada.

Uma pessoa pode mudar seu próprio mundo pessoal, mas não pode mudar o mundo de forma alguma.

Coisas triviais muito complexas para uns e extremamente simples para a pessoa que ultrapassou as barreiras.

Fica a esperança que deixando o pouco de conhecimento que alguma pessoa tem, este possa ser usado, por outra mais capaz que possa aí sim chegar a coisas muito mais interessantes.

Se a pessoa não aprende o que tem que aprender onde está, como será possível ser diferente em outro lugar?

Do que alguém precisa para evoluir o impossível?

.

cap-prision

O Preço

2017

.

Aqui nestas terras, tem admiráveis coisas lindas.

Aqui também tem horrores fatais terríveis.

Eu não sei o quanto custa as pessoas.

Eu sei, apenas o quanto elas me pagam.

Já te disse, sou o guia turístico.

Você agendou este passeio comigo para hoje.

Hoje, você vê este belo e grande lago aí na nossa frente.

Está vendo?

Sente a umidade no ar?

É apenas o teu verão.

Você só tem apenas este verão.

Vê o vento sereno soprando sobre a superfície das águas ligeiramente encapeladas?

Vê a vasta e alta floresta espelhada nas limpas águas escuras?

Ela, a floresta, é profunda também.

Cavernas, nascentes, ravinas, monumentos pré-históricos e toda uma vida selvagem cheia de energia e fome.

Mas eu te guio para onde não existe fera que vai querer lhe comer.

Você vai se divertir.

Agora o vento amainou, o lago está como se fosse um espelho.

Aproveite o momento, e tire umas fotos.

E eu sei que como eu, você pode enxergar as nuvens e o céu azul nas águas.

Como é linda a luz do sol refletindo este mundo invertido; não é mesmo?

Neste espelho.

Mas muitas vezes, o espelho não é o que as águas deste imenso lago reflete.

O espelho é o mundo e se você entrar neste lago no momento certo, dizem, que se chega a um outro lugar.

Pois bem, alguns me chamam de guia.

Guia florestal.

Agente de turismo.

Naturista.

Louco feiticeiro.

Guardião de portais.

Louco, lunático, até mesmo deficiente mental.

E por aí vai…

Eu acabo tendo muitos nomes, no fim das contas.

Acho que já que, você está aqui comigo admirando toda esta beleza, há de me dar um pouco de crédito.

Mas quase ninguém se importa de me perguntar meu verdadeiro nome.

Não perguntam de onde eu vim.

Turistas não se importam muito com guias, acho.

Turistas querem curtição, diversão, sossego e também aventura.

E por você, aqui estou eu.

Apenas sabem que existe uma pessoa autorizada pelo governo a administrar, orientar, manter a ordem e proteger esta natureza e os visitantes.

Eu e minha pequena equipe.

Mas como posso perceber que você se importa um pouco conosco, te direi.

Ninguém sabe, mas eu nasci bem lá no fundo deste grande lago.

Antes das máquinas movimentarem terras.

Engenheiros desviarem riachos e rios.

Na base deste vale afogado, existia uma cidade humilde cheia de vida.

Hoje em dia, é lago represa adornado de florestas, barras e fauna selvagem.

Parece que algo dos moradores da cidade afogada ainda existe.

Mas é apenas lembrança.

Ironias de fantasmas.

Gente que vive, mas morreu faz muito tempo.

Está vendo aquela parte do lago ali?

Lá num mergulho apneia de 20 metros anos atrás, a pressão me fez sonhar.

Vi os telhados e ruas distantes lá no fundão.

Sombras caminhavam pelas ruas a me chamar.

Prosseguindo na trilha.

Vamos, vamos.

Voltando ao início.

Tire a última fotografia.

E fim.

Até Breve.

Volte sempre.

.

Você chegou hein?

2017
.
Parece que um caminhão te atropelou…
.
Eu andei por tanto lugar.
.
Quando eu estive lá eu vi coisas horríveis, não sei… Acho que fiz coisas horríveis.
.
Olha, você faz o que você tem que fazer. Não importa o que seja.
.
Faz a tua coisa!
.
Faça o que tiver de fazer, e eu te digo:
.
“Não importa seja lá o que você tenha feito.
Não importa o tanto que você ache horrendo, querido(a).
Escuta, e escuta bem!
Tem alguém em algum lugar fazendo pior do que você fez, ou acha que fez.
E está fazendo agora, neste exato momento!
Eu sei!
Eu sei mesmo!
Pode acreditar!
Tem milhões que fizeram pior e tem montes de gentes neste exato momento, eu digo agora, neste exato momento fazendo algo a alguém pior, muito pior do que qualquer coisa você tenha feito.
Lembre-se disto!
E nada, nada é pior do que o que todas as pessoas fazem o tempo todo, todos os dias.
As pessoas fecham os olhos e deixam acontecer.
As pessoas passam direto, fingindo que não veem e deixam acontecer.”

 

.

 

Linux-Trabalhar-com-Banco-via-internet?

.

2017

.

As pessoas ficam em dúvida quanto a entrar na internet e mexer na conta bancária. Não existe segurança suficiente que convença muita gente a usar a internet para fazer nada, seja o que for relacionado a dinheiro, investimentos e tudo mais. Mas parece que é muito mais seguro acessar seu banco via um pendrive bootável Linux usando o Firefox do que qualquer outra forma existente atual.

.

É compreensível ter medo. É sábio ter medo de ser enganado por bandidos online e tudo o mais. Pessoas já foram lezadas de todas as formas possíveis financeiramente via internet e os métodos de extorquir, manipular, invadir, etc… não param de crescer, são inventados e reinventados, maquiados…

.

Eles invadem servidores…  E infelizmente, servidores que usam Linux também são alvos de meliantes.

.

Inexiste um sistema operacional completamente seguro.

.

Dizem que a forma mais segura de acessar um site de banco é sem dúvida por CD, Pendrive ou um HD externo, para isso basta instalar o sistema operacional nessas três opções, alterar a forma de Boot do PC e entrar no Linux.

.

Depois disso, falam que é tranquilo acessar seu banco e que você não correrá nenhum risco.

.

“É bom acessar outro sistema operacional através de um meio externo como um CD, DVD ou pendrive Linux. É uma forma também de evitar se contaminar por vírus. Acessar um sistema operacional pela forma de CD é infinitamente mais seguro do que acessá-lo diretamente do Disco Rígido, pois ele sempre estará com a mesma forma de antes, de quando você o instalou.”

.

Ao acessar a página do seu banco pelo Linux, você deve estar sempre atento à URL do site que você acessou. Portanto, cuide a segurança SSL (HTTPS).

.

Se tiver o HTTPS, com certeza, você não precisará se preocupar com mais nada, a não ser com alguém que esteja em sua volta, tentando descobrir a sua senha do banco.

.

Apesar de existirem notícias que conseguem hoje em dia falsificar páginas HTTPS também…

.

Tá vendo? É complicado. Tem que tomar cuidado.

.

Mas se eu fosse gerenciar minha finaça pela intenet no Linux, tem como?

.

Tem sim.

.

Tem o Homebank que faz o gerenciamento financeiro completo da conta de uma pessoa, sem custos.

.

É um software de conta pessoais simples para fazer gerenciamento financeiro e administrar suas contas pessoais.

.

Tem um monte de recursos.

.

1

Análise fácil com gráficos (estatísticas, orçamento, descoberto, custo carro)

.

2

suporte a múltiplas contas, gestão de orçamento, lembrete, orçamento anual simples, transferências entre contas podem ser automatizadas, importação de arquivos nos formatos OFX/QFX-CSV e status visual das operações.

.

Visito o site oficial:

.

http://homebank.free.fr/

.

Para instalar no Linux Mint – 64 bits – Eu por minha conta e risco uso o tutorial abaixo, abrindo o terminal pelo menu do meu sistema e exuto comandos:

.

sudo add-apt-repository ppa:mdoyen/homebank -y

sudo apt-get update

sudo apt-get install homebank

sudo apt update && sudo apt full-upgrade -y ; sudo apt-get check ; sudo apt install -f ; sudo dpkg --configure -a ; sudo update-grub

.

O aquivo .deb pode ser baixado visitando o site oficial, por exemplo:

https://launchpad.net/~mdoyen/+archive/ubuntu/homebank/+packages

.

Caso eu queira remover o Homebank:

sudo apt-get remove homebank

sudo apt-get autoremove

.

Eu até uso, mas não em conta principal minha. É uma continha bem simples de preferência continha de poupança desvinculada de qualquer coisa importante.

.

Existe também a possibilidade de usar bancos virtuais, para vida virtual.

.

Os bancos físicos parecem odiar o bancos virtuais mas eles existem.

.

Muita coisa

2017

.

Olha, eu não posso te dar muita coisa.

Você sempre quis muito.

Sempre quis o mundo e o fundo.

Mas o tempo passou e você tá mal.

Eu não posso te dar muita coisa.

Mas eu posso ter dar um bom prato de comida.

Eu posso te dar alguma coisa para beber.

Tem uma cama sobrando e nela tu pode dormir hoje.

Se tiver frio tem uma coberta limpa pra te aquecer.

No banheiro tem uma escova de dentes na caixa.

Tem um sabonete.

Tem uma toalha limpa.

O chuveiro tem água morna.

Eu tenho milho sobrando.

Eu tenho uns pedaços de queijo.

Eu tenho um pouco de verdura.

Uns pedaços de carne macia.

Não tem bicho na casa, eu usei ectoplasma pra afastar eles.

Só de esquisito aqui, é eu este fantasma.

Vou te dando o que você precisa sem você saber.

Eu vou abrir as nuvens do céu na madrugada.

Quando você acordar, será um dia lindo.

Você se sentirá bem e animado(a).

Aí você vai embora desta casa assombrada e encontrará teu destino.

E eu estarei contigo.

As vezes teu bem.

As vezes teu mal.

 

fim.

Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal

2017

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS

.

COMANDOS PARA MANIPULAÇÃO DE ARQUIVOS

bash : executa o bash

basename :exclui o sufixo do arquivo

fsbrowser : encontra arquivos ou diretórios no pc

head : lista a primeira parte dos arquivos

tail : o contrário do head

cat : exibe conteúdo do arquivo ou direciona-o para outro

Exemplos: cat /home/fulano/contato (exibe o conteúdo do arquivo contato)

cat contato1 > contato2 (faz uma cópia do arquivo contato)

cat contato1 >> contato2 (adiciona um arquivo ao outro)

cat musica.wav > /dev/dsp1 (direciona o som para o dispositivo de audio)

cat arquivo1 arquivo 2 | gzip > arquivo1e2.gz (compacta arquivo1 e arquivo2 num só arquivo)

tac : inverso do cat

file : identifica o tipo de arquivo

find : localiza arquivo ou diretório.

Sintaxe: find [opções] [dados] [opções]

Opções: -name: parâmetro seguido do arquivo a ser procurado

-print : mostrar resultado na tela

-exec ”comando” : executa um comando

-ok : idem a exec, porém pergunta antes de executar o comando

awk : procura por um modelo apartir de um arquivo

bdiff : compara 2 arquivos grandes

bfs: procura um arquivo grande

diff : exibe diferenças entre 2 arquivos ou diretórios

uniq : compara 2 arquivos, exibe as linhas incomparáveis do arquivo

diff3: exibe diferenças entre 3 arquivos ou diretórios

cmp : compara 2 arquivos, mostra a localização da primeira diferença entre eles

comm: compara 2 arquivos para determina quais linhas são comuns entre eles

split : dividir um arquivo

more e less : filtros depaginação

Exemplos : more /etc/fstab

ps -aux | less

ls : lista arquivos do diretório

Atributos : -C : exibe em colunas

-R : modo recursivo-a : mostra ocultos

-l : mostra propriedades

cp : copia arquivos

Atributos: -f : não perguta para sobrescrever

-i : pergunta para sobrescrever

-r : cópia recursiva

mv : movimenta arquivos (mesmos atributos do cp)

rm : remove um arquivo

wc: (não cacete! não é banheiro não!) esse aí lista as propriedades dos arquivos

Atributos : -l : nº de linhas do arquivo

-c : n de cracteres

-w : nº de palavras

-b : nº de bytes

grep : uma espécie de busca. Exemplo: % grep tty

od : mostra o arquivo em formato octal

ln : link simbólico para arquivos e/ou pastas. Exemplo: ln linux-2.6 kernel-atual

.

Linux-como-criar-arquivos-escrever-em-arquivos-mover-arquivos-copiar-arquivos-renomear-arquivos-compactar-arquivos-e-extrair-arquivos-e-pastas-no-linux-usando-o-terminal

.

Para criar-escrever-mover-copiar-renomear-comactar-e-extrair-arquivos-no-linux-usando-o-terminal tenho que saber os comandos de manipulação de diretórios e arquivos.

.

Estes abaixo:

.

COMANDOS PARA MANIPULAÇÃO DE DIRETÓRIOS

cd : entra no diretório

Atributos: – : volta ao último diretório buscado

~ [nomedapastadousuario] : vai para a pasta do usuário

/ : diretório raiz

.. : diretório “acima”

ls : lista arquivos e diretórios

Atributos : -C : exibe em colunas

-R : modo recursivo

-a : mostra ocultos

-l : mostra propriedades

mkdir : cria um diretório

rmdir : remove um diretório (atributo : -R para deletar diretórios não vazios)

pwd : mostra o diretório atual

cp : copia diretórios

Atributos: -f : não perguta para sobrescrever

-i : pergunta para sobrescrever

-r : cópia recursiva

mv : movimenta diretórios (mesmos atributos do cp)

du : mostra hierarquia

Atributos: -a : informações de todos os arquivos

-b : mostra em bytes

-k : mostra em kbytes

-s : lista o total de cada argumento

-x : ignora diretórios com sistemas de arquivos diferentes

-S : apresenta o tamanho de cada diretório separadamente

diff : exibe diferenças entre 2 arquivos ou diretórios

diff3 : exibe diferenças entre 3 arquivos ou diretórios

ln : link simbólico para arquivos e/ou pastas. Exemplo: ln linux-2.6 kernel-atual

.

COMANDOS PARA COMPACTAR

Todos fazem a mesma coisa, só que em formatos diferentes, dependendo da ocasião um pode ser melhor que o outro… depende.

compress/ uncompress : compacta / descompacta em .z

Sintaxe : idem a bzip2

Atributos: -f : compacta em background

-c : desmpacta na tela

-V : informações sobre o arquivo

-v : informações sobre a compactação corrente

-d: junto dom o compress, descompacta o arquivo

tar : Atributos: -t : lista conteúdo do arquivo tar

-x : extrai arquivos

-c : cria um arquivo tar

-d : compara um arquivo tar com arquivos atuais

-r : anexa arquivos no fim do arquivo tar

-u : analiza arquivos

-A : anexa outros tar

-v : mostra informações de processamento

Exemplos: tar cvM -L 1350 -f /mnt/floopy/partes.tgz grande.tgz : quebra um arquivo grande em

partes menores.

tar pvfx arquivo.tar: extrai tar

tar zpvfx : extrai tar.gz ou tgz

tar jpvfx : extrai tar.bz2

gzip : compacta arquivos e nomes de arquivos com mais de 14 letrras

Atributos: -d : descompacta

-f : compacta

-l : informações sobre arquivo compactado

-r : recursivo

gunzip : descompacta

Exemplo: gzip -c arquivo1 > arquivo1e2.gz ; gzip -c arquivo2 > arquivo1e2.gz ou

cat arquivo1 arquivo 2 | gzip > arquivo1e2.gz

(compacta arquivo1 e arquivo2 num só arquivo)

bzip / bunzip: compacta / descompacta

bzcat : descompacta na tela do sistema

bzip2recover : recupera arquivos danificados quando for possível

Atributos : -1 : (1, 2,3…9) sendo que 9 é o maior fator de compactação

-v : informações de processamento

-c : descompacta na tela do sistema

-d : descompacta

-t : verifica integridade do arqivo

-f : sobrescreve

-s : reduz us da memória exigida

cpio: executa funções equivalentes a arquivos de dados em formato cpio ou tar, e contém informações sobre o arquivo. Seus modos de arquivamento são entrada, saída e passagem.

Modo de entrada cpio: extrai arquivos de um arquivo maior, caso não for inserido um padrão, todos são extraídos.

Modo de saída cpio: copia os arquivos em um arquivo maior

Modo de passagem cpio: combina os modos de entrada e saída sem usar modo de arquivamento, copia uma árvore de diretórios para outra.

Parâmetros: -0 : (saída / passagem) lê arquivo terminado em caractere nulo; ao invéz de nova linha.

-A : (saída) adiciona um arquivo existente; deve estar especificado -0 ou -F

-d : cria diretório (se for preciso)

-H : indica o formato do arquivo maior

-i : (entrada) extrai

-o : (saída) cria

-t : (entrada) lista tabela

-u :sobrescreve sem perguntar

-v : lista arquivos processados

.

AGORA VOU FAZER EXERCÍCIOS NO TERMINAL DO MEU LINUX.

.

EU POR MINHA CONTA E RISCO, ABRO O TERMINAL PELO MENU DO MEU SISTEMA LINUX E EXECUTO OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR E EXTRAIR ARQUIVOS.

.

Criar arquivos pelo terminal. O meu nome de usuário é user. O nome da minha máquina é pc. A minha Home é user. Ou pode ser live@extix:~$

.

Vou usar o comando touch para criar arquivos. O comando touch serve para mudar a data e hora de arquivos e também cria arquivos vazios.

.

Se eu quiser que a pasta Downloads seja tocada.

touch Downloads/

cap-touch-downloads

.

Depois digito:

ls -t

cap-ls-t

.

Viu o Resultado?

.

Agora toco a pasta Documentos

touch Documentos/

.

Depois digito:

ls -t

touch-download

.

Viu o Resultado?

O comando touch modifica a data e hora de acesso e modificação de arquivos.

Você pode modificar tanto a hora de acesso quanto a hora de modificação dos arquivos, ou os dois ao mesmo tempo.

.

Agora vou criar um arquivo vazio na pasta Modelos. Navego até a pasta modelos. Uso os comandos abaixo:

cd

ls

pwd

cd Mo (aperto a tecla Tab e o resultado é este abaixo)

$ cd Modelos/

Aperto a tecla enter e o resultado é:

~/Modelos $

cap-modelos

Digito:

pwd

ls

touch meu-arquivo.txt

ls -t

cap-grenciador-de-arquivos-mostrando-arquivo-criado-pelo-terminal-linux

Viu que foi criado o arquivo? Quando estiver usando o terminal abra o seu gerenciador de arquivos na pasta modelos para ver o que o terminal faz. No meu caso é o caja.

.

Posso também criar um arquivo dizendo um caminho para o Bash, seguindo o exemplo abaixo:

touch /caminho/nome_do_arquivo

Para adicionar caminhos novos ao “caminho existente”, use pwd, ls para se orientar e depois; vá até o fim da linha e adicione o novo caminho.

Com o comando pwd eu sei que o meu caminho para Modulos é:

/home/user/Modelos

.

Então eu vou para a pasta inicial digitando cd

.

cd

pwd

ls

touch /home/user/Modelos/meu-arquivo2

modelos-meu-arquivo2

cd Modelos/

pwd

ls -t

O resultado é:

$ ls -t

meu-arquivo2 meu-arquivo.txt

.

Entã, Se você já estiver dentro da pasta onde vai criar o arquivo, basta inserir:

touch nome-do-arquivo.extenção-do-arquivo

.

COMANDO TOUCH – UMA FORMA PARA MODIFICAR A DATA DE ACESSO E MODIFICAÇÃO DE ARQUIVOS

A – ano (é considerado a faixa de 1969-2068)

M – mês

D – dia

h – Hora

m – minutos

s – segundos

Para modificarmos a data e hora de acesso e modificação de um arquivo basta fazermos o seguinte:

touch -t AAAAMMDDhhmm.ss arquivo

Se o arquivo não existir ele será criado com a data e hora definidas. Se o arquivo já existir, ocorrerá apenas a alteração da data e da hora.

.

Agora quero criar uma pasta chamada pasta-dos-arquivos na pasta Modulos com o comando mkdir.

O comando mkdir é utilizado para criar um diretório no sistema.

Um diretório, no Linux, seria o equivalente a “pasta”.

A finalidade do comando mkdir, é criar diretórios para que possamos deixar o sistema organizado.

Para criar o diretório, temos que estar no local onde ele irá ficar ou então temos que apontar o caminho onde o mesmo será criado como foi feito quando eu criei meu-arquivo2.

Vou usar o mesmo endereço, executando os comandos abaixo:

cd

pwd

ls

cd Modelos/

pwd

ls -t

cd

ls

mkdir /home/user/Modelos/pasta-dos-arquivos

mkdir-pasta-dos-arquivos

cd Modelos/

ls -t

cd

pwd

ls

ls -t /home/user/Modelos/pasta-dos-arquivos

.

Resultado:

~/Modelos $ ls -t

pasta-dos-arquivos meu-arquivo2 meu-arquivo.txt

captura-pasta-modelos

.

Viu? Tudo está indo bem até agora.

.

Uso estes comandos abaixo:

cd

pwd

ls

ls -lah /home/user/Modelos/

ls -C /home/user/Modelos/

.

Legal né? Viu o resultado? Dá para listar os arquivos de uma pasta usando ls e o endereço.

.

Agora leia estas instruções abaixo e vamos depois continuar o que estávamos fazendo:

.

COMANDOS DE INICIALIZAÇÃO

shutdown :Sintaxe: shutdown [atributo] [tempo]

Atributos: -r : reboot

-h : halt

-n : force (sem sincronizar)

-f : reboot rápido

-c : cancela shutdown corrente

-k : somente simula um shutdown

Tempo: now : executar no exato momento

Exemplo: Shutdown -r now

poweroff : halt

init 0 : halt

init 3: derruba o modo gráfico

init 5: iniciar o modo gráfico

init 6 : reboot

init q: examinar o arquivo /etc/inittab

init s: entrar em modo mono usuário (single mode)

exit: termina sessão atual

logout : termina sessão atual

.

COMANDOS DE SISTEMA

.

dmsg | less : mostrar lista de inicialização

arch : mostra a arquitetura do computador

uname : informações de sistema

Parâmetros: -m : hardware

-n : nome da máquina na rede

-r : versão do kernel

-s : nome do OS

-v : data de compilação do OS

-a : todas as acima…

uptime : mostra o tempo em que a máquina está no ar

free : mostra o uso da memória

vmstat : Mostra as estatísticas da memória virtual

ps -aux | grep tty : lista terminais em uso

tty : mostra em qual terminal o usuário atual está

stty : exibir ou escolher parâmetos do terminal

tset : escolher tipo de terminal

fgconsole : exibe o nº de terminais válidos

cu : chama outro sistema unix

type : informa o que faz um certo comando. Exemplo: type mount

time : mede o tempo gasto para executar um comando

cal : calendário

date: data e hora

who : mostra quem está na máqina no momento

whoami : mostra quem é você

last : informa a entrada e saída de usuários no sistema

lastlog : informa o último usuário que logou no sistema

at : agendar tarefas. Sintaxe : at [hora][data][comando]

crontab : programa tarefas.

Sintaxe: crontab [-parâmetros][usário][arquivo]

Parâmetros: -l : exibe crontab do usuário atual

-r : remove crontab do usuário atual

edita-se o arquivo /usr/spool/cron/crontab . São 6 campos separados por sendo que:

1º é o minuto

2º é o hora

3º é o dia do mês

4º é o mês

5º é o dia da semana (que começa com 0 = domingo)

6º é a tarefa ou script a ser executado

lspci : lista os dispositivos PCI

setserial : informações sobre as portas seriais

.

Continuando o exercício, eu tenho dois arquivos vazios na pasta Modelos. Os arquivos chamam-se meu-arquivo.txt e meu-arquivo2. Tenho também uma pasta chamada pasta-dos-arquivos.

Eu quero mover o arquivo chamado meu-arquivo.txt para dentro da pasta-dos-arquivos.

.

Uso o comando mv. Assim:

cd Modelos/

mv meu-arquivo.txt pasta-dos-arquivos/

mv-para-pasta-dos-arquivos

.

mv-pasta-dos-arquivos2

cd pasta-dos-arquivos/

ls -t

pwd

meu-arquivo.txt-na-pasta-dos-arquivos

.

Agora eu quero escrever alguma coisa neste arquivo chamado meu-arquivo.txt que está na pasta-dos-arquivos. Eu estou com o terminal na pasta-dos-arquivos então vou usar o nano que já vem no Linux quando a gente instala.

Fica assim:

~/Modelos/pasta-dos-arquivos $ nano meu-arquivo.txt

O nano se abre no terminal e eu posso copiar um texto de qualquer lugar e cola nele. Até mesmo este texo que estou escrevendo aqui.

Para gravar o texto aperto Ctrl+O, aperto a tecla Enter e por fim aperto Ctrl+X.

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Estou na pasta-dos-arquivos e quero voltar para a pasta anterior. Uso o comando:

cd ..

[cd espaço dois pontos]

.

Na pasta Modelos eu tenho um arquivo vazio chamado meu-arquivo2 e quero renomear ele para meu-arquivo2.txt.

o comando ‘mv’ serve para mover e renomear aquivos, executo os comandos abaixo:

cd Modelos/

ls -t

mv meu-arquivo2 meu-arquivo.txt

ls

.

Resultado:

~/Modelos $ ls

meu-arquivo.txt pasta-dos-arquivos

.

Agora eu quero escrever um texto no arquivo meu-arquivo.txt sem usar o nano. Quero usar o comando echo. Estou na pasta onde o arquivo que vou escrever está. Executo o comando abaixo:

echo “Estou escrevendo no arquivo meu-arquivo.txt usando o comando echo!” > meu-arquivo.txt

.

Para conferir o que está escrito em meu-arquivo.txt uso o comando cat. Uso o comando abaixo:

cat meu-arquivo.txt

.

O resultado é:

~/Modelos $ cat meu-arquivo.txt

Estou escrevendo no arquivo meu-arquivo.txt usando o comando echo!

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Agora vou mover meu-arquivo.txt para pasta-dos-arquivos. Uso o comando abaixo:

mv meu-arquivo.txt pasta-dos-arquivos/

.

Agora, vou criar uma cópia da pasta-dos-arquivos. O nome da cópia será pasta-dos-arquivos-cp. Para isto, tenho que usar o comando cp e o argumento -r. Fica assim:

cp -r pasta-dos-arquivos pasta-dos-arquivos-cp

ls -t

.

Viu como funcionou direitinho?

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Agora quero compactar a pasta-dos-arquivos-cp para isto, eu uso o comando abaixo:

tar cvzf backup-pasta-dos-arquivos-cp.tar.gz pasta-dos-arquivos-cp/

ls -t

pwd

.

Para Compactação de arquivos .tar use a seguinte sintaxe:

tar -zcf nome_arq.tar nome_dir_ou_arq_a_ser_compactado

Ex:

tar -zcf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -zcf pacote.tar meus_documentos/

(compactação de um diretório)

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Feito esse procedimento, já estará gerado com compactação o arquivo.tar

* Para descompactá-lo use: tar -zxvf nomedoarq.tar

com isso, os arquivos serão restaurados dentro do diretório onde estavam caso foi feita a compactação de uma pasta, ou no local onde o arquivo .tar.gz está se foram compactados arquivos individuais.

========== .tar.gz ==========

Compactação de arquivos .tar.gz

Use a seguinte sintaxe:

Primeiro gere o arquivo .tar com o comando:

tar -cf nomedoarq.tar nomedodir_ou_arq_a_ser_compactado Ex:

tar -cf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -cf pacote.tar meus_documentos/

(compactação de um diretório)

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Depois é só gerar o .tar.gz assim:

gzip -9 nomedoarquivo.tar

Ex:

gzip -9 pacote.tar

com isso vc já terá o arquivo pacote.tar.gz.

* Para descompactá-lo use os seguintes procedimentos:

gzip -d pacote.tar.gz

tar -zxvf pacote.tar

feito isso, os arquivos serão restaurados dentro do diretório onde estavam caso foi feita a compactação de uma pasta, ou no local onde o arquivo .tar.gz está se foram compactados arquivos individuais.

========== .tar.bz2 ==========

Para obter a compactação máxima, este sem dúvida seria o melhor formato, e para gerá-lo use o seguinte procedimento:

1)Gere o arquivo.tar com a seguinte sintaxe:

tar -cf nome_arq.tar nome_arq ou nome_dir_a_ser_compactado Ex:

tar -cf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -cf pacote.tar meus_documentos/

(compactação de um diretório)

2)Gere agora o .tar.bz2 da seguinte forma:

digite: bzip2 nome_arq.tar

Ex:

bzip2 pacote.tar

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Com esse procedimento será gerado o arquivo pacote.tar.bz2,

* Para descompactá-lo use o seguintes procedimentos:

bunzip2 pacote.tar.bz2

com isso teremos o arquivo.tar de volta, depois para desempacotar o .tar use:

tar -zxvf pacote.tar

e os arquivos serão descompactados em seu lugar de origem ou em caso de arquivos individuais eles serão extraídos no local onde está o arquivo.tar

.

O OBJETIVO DESTE TUTORIAL FOI ENSINAR VOCÊ ESTUDANTE DE LINUX QUE NEM EU A EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Creio que este objetivo foi atingido.

.

Agora vou criar um PDF e um ePub deste texto aqui depois vou upar ele na nuvem e disponibilizar o link para quem quiser baixar e ler. Tudo pelo terminal.

.

Vou copiar este texto para a pasta Modelos. Instalo o programa Calibre.

.

Usarei o exemplo abaixo para converter o arquivo .txt para .epub:

$ ebook-convert nome-do-arquivo.txt nome-do-arquivo.epub –enable-heuristics

.

Fica assim:

ebook-convert Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.txt Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.epub

Agora vou converter o epub para pdf usando o exemplo abaixo:

$ ebook-convert nome-do-arquivo.epub nome-do-arquivo.pdf –enable-heuristics

.

Fica assim:

ebook-convert Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.epub Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.pdf

Executo os comandos abaixo:

ls -t

ls -lah

ls -C

pwd

exit

,

Abro meu navegador preferido pelo menu do sistema, e começo as postagens e uploads.

.

Amigo, conhecimento é poder e não existe limites para o quanto uma pessoa pode aprender no mundo Linux e o mundo Linux inside na realidade fisica do nosso mundo atual.

.

Link Telegraph

.

http://telegra.ph/Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal-08-09

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS

.

Linux-como-criar-arquivos-escrever-em-arquivos-mover-arquivos-copiar-arquivos-renomear-arquivos-compactar-arquivos-e-extrair-arquivos-e-pastas-no-linux-usando-o-terminal

.

Para criar-escrever-mover-copiar-renomear-comactar-e-extrair-arquivos-no-linux-usando-o-terminal tenho que saber os comandos de manipulação de diretórios e arquivos.

.

Estes abaixo:

.

COMANDOS PARA MANIPULAÇÃO DE DIRETÓRIOS

cd : entra no diretório

Atributos: – : volta ao último diretório buscado

~ [nomedapastadousuario] : vai para a pasta do usuário

/ : diretório raiz

.. : diretório “acima”

ls : lista arquivos e diretórios

Atributos : -C : exibe em colunas

-R : modo recursivo

-a : mostra ocultos

-l : mostra propriedades

mkdir : cria um diretório

rmdir : remove um diretório (atributo : -R para deletar diretórios não vazios)

pwd : mostra o diretório atual

cp : copia diretórios

Atributos: -f : não perguta para sobrescrever

-i : pergunta para sobrescrever

-r : cópia recursiva

mv : movimenta diretórios (mesmos atributos do cp)

du : mostra hierarquia

Atributos: -a : informações de todos os arquivos

-b : mostra em bytes

-k : mostra em kbytes

-s : lista o total de cada argumento

-x : ignora diretórios com sistemas de arquivos diferentes

-S : apresenta o tamanho de cada diretório separadamente

diff : exibe diferenças entre 2 arquivos ou diretórios

diff3 : exibe diferenças entre 3 arquivos ou diretórios

ln : link simbólico para arquivos e/ou pastas. Exemplo: ln linux-2.6 kernel-atual

.

COMANDOS PARA MANIPULAÇÃO DE ARQUIVOS

bash : executa o bash

basename :exclui o sufixo do arquivo

fsbrowser : encontra arquivos ou diretórios no pc

head : lista a primeira parte dos arquivos

tail : o contrário do head

cat : exibe conteúdo do arquivo ou direciona-o para outro

Exemplos: cat /home/fulano/contato (exibe o conteúdo do arquivo contato)

cat contato1 > contato2 (faz uma cópia do arquivo contato)

cat contato1 >> contato2 (adiciona um arquivo ao outro)

cat musica.wav > /dev/dsp1 (direciona o som para o dispositivo de audio)

cat arquivo1 arquivo 2 | gzip > arquivo1e2.gz (compacta arquivo1 e arquivo2 num só arquivo)

tac : inverso do cat

file : identifica o tipo de arquivo

find : localiza arquivo ou diretório.

Sintaxe: find [opções] [dados] [opções]

Opções: -name: parâmetro seguido do arquivo a ser procurado

-print : mostrar resultado na tela

-exec ”comando” : executa um comando

-ok : idem a exec, porém pergunta antes de executar o comando

awk : procura por um modelo apartir de um arquivo

bdiff : compara 2 arquivos grandes

bfs: procura um arquivo grande

diff : exibe diferenças entre 2 arquivos ou diretórios

uniq : compara 2 arquivos, exibe as linhas incomparáveis do arquivo

diff3: exibe diferenças entre 3 arquivos ou diretórios

cmp : compara 2 arquivos, mostra a localização da primeira diferença entre eles

comm: compara 2 arquivos para determina quais linhas são comuns entre eles

split : dividir um arquivo

more e less : filtros depaginação

Exemplos : more /etc/fstab

ps -aux | less

ls : lista arquivos do diretório

Atributos : -C : exibe em colunas

-R : modo recursivo-a : mostra ocultos

-l : mostra propriedades

cp : copia arquivos

Atributos: -f : não perguta para sobrescrever

-i : pergunta para sobrescrever

-r : cópia recursiva

mv : movimenta arquivos (mesmos atributos do cp)

rm : remove um arquivo

wc: (não cacete! não é banheiro não!) esse aí lista as propriedades dos arquivos

Atributos : -l : nº de linhas do arquivo

-c : n de cracteres

-w : nº de palavras

-b : nº de bytes

grep : uma espécie de busca. Exemplo: % grep tty

od : mostra o arquivo em formato octal

ln : link simbólico para arquivos e/ou pastas. Exemplo: ln linux-2.6 kernel-atual

.

COMANDOS PARA COMPACTAR

.

Todos fazem a mesma coisa, só que em formatos diferentes, dependendo da ocasião um pode ser melhor que o outro… depende.

compress/ uncompress : compacta / descompacta em .z

Sintaxe : idem a bzip2

Atributos: -f : compacta em background

.

-c : desmpacta na tela

-V : informações sobre o arquivo

-v : informações sobre a compactação corrente

-d: junto dom o compress, descompacta o arquivo

tar : Atributos: -t : lista conteúdo do arquivo tar

-x : extrai arquivos

-c : cria um arquivo tar

-d : compara um arquivo tar com arquivos atuais

-r : anexa arquivos no fim do arquivo tar

-u : analiza arquivos

-A : anexa outros tar

-v : mostra informações de processamento

Exemplos: tar cvM -L 1350 -f /mnt/floopy/partes.tgz grande.tgz : quebra um arquivo grande em

partes menores.

tar pvfx arquivo.tar: extrai tar

tar zpvfx : extrai tar.gz ou tgz

tar jpvfx : extrai tar.bz2

gzip : compacta arquivos e nomes de arquivos com mais de 14 letrras

Atributos: -d : descompacta

-f : compacta

-l : informações sobre arquivo compactado

-r : recursivo

gunzip : descompacta

Exemplo: gzip -c arquivo1 > arquivo1e2.gz ; gzip -c arquivo2 > arquivo1e2.gz ou

cat arquivo1 arquivo 2 | gzip > arquivo1e2.gz

(compacta arquivo1 e arquivo2 num só arquivo)

bzip / bunzip: compacta / descompacta

bzcat : descompacta na tela do sistema

bzip2recover : recupera arquivos danificados quando for possível

Atributos : -1 : (1, 2,3…9) sendo que 9 é o maior fator de compactação

-v : informações de processamento

-c : descompacta na tela do sistema

-d : descompacta

-t : verifica integridade do arqivo

-f : sobrescreve

-s : reduz us da memória exigida

cpio: executa funções equivalentes a arquivos de dados em formato cpio ou tar, e contém informações sobre o arquivo. Seus modos de arquivamento são entrada, saída e passagem.

Modo de entrada cpio: extrai arquivos de um arquivo maior, caso não for inserido um padrão, todos são extraídos.

Modo de saída cpio: copia os arquivos em um arquivo maior

Modo de passagem cpio: combina os modos de entrada e saída sem usar modo de arquivamento, copia uma árvore de diretórios para outra.

Parâmetros: -0 : (saída / passagem) lê arquivo terminado em caractere nulo; ao invéz de nova linha.

-A : (saída) adiciona um arquivo existente; deve estar especificado -0 ou -F

-d : cria diretório (se for preciso)

-H : indica o formato do arquivo maior

-i : (entrada) extrai

-o : (saída) cria

-t : (entrada) lista tabela

-u :sobrescreve sem perguntar

-v : lista arquivos processados

.

AGORA MAIS EXERCÍCIOS NO TERMINAL DO MEU LINUX.

.

EU POR MINHA CONTA E RISCO, ABRO O TERMINAL PELO MENU DO MEU SISTEMA LINUX E EXECUTO OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR E EXTRAIR ARQUIVOS.

.

Criar arquivos pelo terminal. O meu nome de usuário é user. O nome da minha máquina é pc. A minha Home é user.

.

Vou usar o comando touch para criar arquivos. O comando touch serve para mudar a data e hora de arquivos e também cria arquivos vazios.

.

Se eu quiser que a pasta Downloads seja tocada.

touch Downloads/

.

Depois digito:

ls -t

.

Viu o Resultado?

.

Agora toco a pasta Documentos

touch Documentos/

.

Depois digito:

ls -t

.

Viu o Resultado?

O comando touch modifica a data e hora de acesso e modificação de arquivos.

Você pode modificar tanto a hora de acesso quanto a hora de modificação dos arquivos, ou os dois ao mesmo tempo.

.

Agora vou criar um arquivo vazio na pasta Modelos. Navego até a pasta modelos. Uso os comandos abaixo:

cd

ls

pwd

cd Mo (aperto a tecla Tab e o resultado é este abaixo)

$ cd Modelos/

Aperto a tecla enter e o resultado é:

~/Modelos $

Digito:

pwd

ls

touch meu-arquivo.txt

ls -t

Viu que foi criado o arquivo? Quando estiver usando o terminal abra o seu gerenciador de arquivos na pasta modelos para ver o que o terminal faz. No meu caso é o caja.

Posso também criar um arquivo dizendo um caminho para o Bash, seguindo o exemplo abaixo:

touch /caminho/nome_do_arquivo

Para adicionar caminhos novos ao “caminho existente”, use pwd, ls para se orientar e depois; vá até o fim da linha e adicione o novo caminho.

Com o comando pwd eu sei que o meu caminho para Modulos é:

/home/user/Modelos

Então eu vou para a pasta inicial digitando cd

.

cd

pwd

ls

touch /home/user/Modelos/meu-arquivo2

cd Modelos/

pwd

ls -t

O resultado é:

$ ls -t

meu-arquivo2 meu-arquivo.txt

.

Entã, Se você já estiver dentro da pasta onde vai criar o arquivo, basta inserir:

touch nome-do-arquivo.extenção-do-arquivo

.

COMANDO TOUCH – UMA FORMA PARA MODIFICAR A DATA DE ACESSO E MODIFICAÇÃO DE ARQUIVOS

A – ano (é considerado a faixa de 1969-2068)

M – mês

D – dia

h – Hora

m – minutos

s – segundos

Para modificarmos a data e hora de acesso e modificação de um arquivo basta fazermos o seguinte:

touch -t AAAAMMDDhhmm.ss arquivo

Se o arquivo não existir ele será criado com a data e hora definidas. Se o arquivo já existir, ocorrerá apenas a alteração da data e da hora.

.

Agora quero criar uma pasta chamada pasta-dos-arquivos na pasta Modulos com o comando mkdir.

O comando mkdir é utilizado para criar um diretório no sistema.

Um diretório, no Linux, seria o equivalente a “pasta”.

A finalidade do comando mkdir, é criar diretórios para que possamos deixar o sistema organizado.

Para criar o diretório, temos que estar no local onde ele irá ficar ou então temos que apontar o caminho onde o mesmo será criado como foi feito quando eu criei meu-arquivo2.

Vou usar o mesmo endereço, executando os comandos abaixo:

cd

pwd

ls

cd Modelos/

pwd

ls -t

cd

ls

mkdir /home/user/Modelos/pasta-dos-arquivos

cd Modelos/

ls -t

cd

pwd

ls

ls -t /home/user/Modelos/pasta-dos-arquivos

.

Resultado:

~/Modelos $ ls -t

pasta-dos-arquivos meu-arquivo2 meu-arquivo.txt

.

Viu? Tudo está indo bem até agora.

.

Uso estes comandos abaixo:

cd

pwd

ls

ls -lah /home/user/Modelos/

ls -C /home/user/Modelos/

.

Legal né? Viu o resultado? Dá para listar os arquivos de uma pasta usando ls e o endereço.

.

Agora leia estas instruções abaixo e vamos depois continuar o que estávamos fazendo:

COMANDOS DE INICIALIZAÇÃO

shutdown :Sintaxe: shutdown [atributo] [tempo]

Atributos: -r : reboot

-h : halt

-n : force (sem sincronizar)

-f : reboot rápido

-c : cancela shutdown corrente

-k : somente simula um shutdown

Tempo: now : executar no exato momento

Exemplo: Shutdown -r now

poweroff : halt

init 0 : halt

init 3: derruba o modo gráfico

init 5: iniciar o modo gráfico

init 6 : reboot

init q: examinar o arquivo /etc/inittab

init s: entrar em modo mono usuário (single mode)

exit: termina sessão atual

logout : termina sessão atual

.

COMANDOS DE SISTEMA

dmsg | less : mostrar lista de inicialização

arch : mostra a arquitetura do computador

uname : informações de sistema

Parâmetros: -m : hardware

-n : nome da máquina na rede

-r : versão do kernel

-s : nome do OS

-v : data de compilação do OS

.

-a : todas as acima…

uptime : mostra o tempo em que a máquina está no ar

free : mostra o uso da memória

vmstat : Mostra as estatísticas da memória virtual

ps -aux | grep tty : lista terminais em uso

tty : mostra em qual terminal o usuário atual está

stty : exibir ou escolher parâmetos do terminal

tset : escolher tipo de terminal

fgconsole : exibe o nº de terminais válidos

cu : chama outro sistema unix

type : informa o que faz um certo comando. Exemplo: type mount

time : mede o tempo gasto para executar um comando

cal : calendário

date: data e hora

who : mostra quem está na máqina no momento

whoami : mostra quem é você

last : informa a entrada e saída de usuários no sistema

lastlog : informa o último usuário que logou no sistema

at : agendar tarefas. Sintaxe : at [hora][data][comando]

crontab : programa tarefas.

Sintaxe: crontab [-parâmetros][usário][arquivo]

Parâmetros: -l : exibe crontab do usuário atual

-r : remove crontab do usuário atual

edita-se o arquivo /usr/spool/cron/crontab . São 6 campos separados por sendo que:

1º é o minuto

2º é o hora

3º é o dia do mês

4º é o mês

5º é o dia da semana (que começa com 0 = domingo)

6º é a tarefa ou script a ser executado

lspci : lista os dispositivos PCI

setserial : informações sobre as portas seriais

.

Continuando o exercício, eu tenho dois arquivos vazios na pasta Modelos. Os arquivos chamam-se meu-arquivo.txt e meu-arquivo2. Tenho também uma pasta chamada pasta-dos-arquivos.

Eu quero mover o arquivo chamado meu-arquivo.txt para dentro da pasta-dos-arquivos.

.

Uso o comando mv. Assim:

cd Modelos/

mv meu-arquivo.txt pasta-dos-arquivos/

cd pasta-dos-arquivos/

ls -t

pwd

.

Agora eu quero escrever alguma coisa neste arquivo chamado meu-arquivo.txt que está na pasta-dos-arquivos. Eu estou com o terminal na pasta-dos-arquivos então vou usar o nano que já vem no Linux quando a gente instala.

Fica assim:

~/Modelos/pasta-dos-arquivos $ nano meu-arquivo.txt

O nano se abre no terminal e eu posso copiar um texto de qualquer lugar e cola nele. Até mesmo este texo que estou escrevendo aqui.

Para gravar o texto aperto Ctrl+O, aperto a tecla Enter e por fim aperto Ctrl+X.

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Estou na pasta-dos-arquivos e quero voltar para a pasta anterior. Uso o comando:

cd ..

[cd espaço dois pontos]

.

Na pasta Modelos eu tenho um arquivo vazio chamado meu-arquivo2 e quero renomear ele para meu-arquivo2.txt.

o comando ‘mv’ serve para mover e renomear aquivos, executo os comandos abaixo:

cd Modelos/

ls -t

mv meu-arquivo2 meu-arquivo.txt

ls

.

Resultado:

~/Modelos $ ls

meu-arquivo.txt pasta-dos-arquivos

.

Agora eu quero escrever um texto no arquivo meu-arquivo.txt sem usar o nano. Quero usar o comando echo. Estou na pasta onde o arquivo que vou escrever está. Executo o comando abaixo:

echo “Estou escrevendo no arquivo meu-arquivo.txt usando o comando echo!” > meu-arquivo.txt

.

Para conferir o que está escrito em meu-arquivo.txt uso o comando cat. Uso o comando abaixo:

cat meu-arquivo.txt

.

O resultado é:

~/Modelos $ cat meu-arquivo.txt

Estou escrevendo no arquivo meu-arquivo.txt usando o comando echo!

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Agora vou mover meu-arquivo.txt para pasta-dos-arquivos. Uso o comando abaixo:

mv meu-arquivo.txt pasta-dos-arquivos/

.

Agora, vou criar uma cópia da pasta-dos-arquivos. O nome da cópia será pasta-dos-arquivos-cp. Para isto, tenho que usar o comando cp e o argumento -r. Fica assim:

cp -r pasta-dos-arquivos pasta-dos-arquivos-cp

ls -t

.

Viu como funcionou direitinho?

.

O OBJETIVO DESTE TUTORIAL É EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

.

Agora quero compactar a pasta-dos-arquivos-cp para isto, eu uso o comando abaixo:

tar cvzf backup-pasta-dos-arquivos-cp.tar.gz pasta-dos-arquivos-cp/

ls -t

pwd

.

Para Compactação de arquivos .tar use a seguinte sintaxe:

tar -zcf nome_arq.tar nome_dir_ou_arq_a_ser_compactado

Ex:

tar -zcf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -zcf pacote.tar meus_documentos/

(compactação de um diretório)

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Feito esse procedimento, já estará gerado com compactação o arquivo.tar

* Para descompactá-lo use: tar -zxvf nomedoarq.tar

com isso, os arquivos serão restaurados dentro do diretório onde estavam caso foi feita a compactação de uma pasta, ou no local onde o arquivo .tar.gz está se foram compactados arquivos individuais.

========== .tar.gz ==========

Compactação de arquivos .tar.gz

Use a seguinte sintaxe:

Primeiro gere o arquivo .tar com o comando:

tar -cf nomedoarq.tar nomedodir_ou_arq_a_ser_compactado Ex:

tar -cf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -cf pacote.tar meus_documentos/

(compactação de um diretório)

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Depois é só gerar o .tar.gz assim:

gzip -9 nomedoarquivo.tar

Ex:

gzip -9 pacote.tar

com isso vc já terá o arquivo pacote.tar.gz.

* Para descompactá-lo use os seguintes procedimentos:

gzip -d pacote.tar.gz

tar -zxvf pacote.tar

feito isso, os arquivos serão restaurados dentro do diretório onde estavam caso foi feita a compactação de uma pasta, ou no local onde o arquivo .tar.gz está se foram compactados arquivos individuais.

========== .tar.bz2 ==========

Para obter a compactação máxima, este sem dúvida seria o melhor formato, e para gerá-lo use o seguinte procedimento:

1)Gere o arquivo.tar com a seguinte sintaxe:

tar -cf nome_arq.tar nome_arq ou nome_dir_a_ser_compactado Ex:

tar -cf pacote.tar arquivo1.gif memorando.htm carta.doc

(compactação de 3 arquivos individuais)

ou

tar -cf pacote.tar meus_documentos/

(compactação de um diretório)

2)Gere agora o .tar.bz2 da seguinte forma:

digite: bzip2 nome_arq.tar

Ex:

bzip2 pacote.tar

É importante salientar que vc deve estar no local onde estão os arquivos ou o diretório a serem compactados.

Com esse procedimento será gerado o arquivo pacote.tar.bz2,

* Para descompactá-lo use o seguintes procedimentos:

bunzip2 pacote.tar.bz2

com isso teremos o arquivo.tar de volta, depois para desempacotar o .tar use:

tar -zxvf pacote.tar

e os arquivos serão descompactados em seu lugar de origem ou em caso de arquivos individuais eles serão extraídos no local onde está o arquivo.tar

.

O OBJETIVO DESTE TUTORIAL FOI ENSINAR VOCÊ ESTUDANTE DE LINUX QUE NEM EU A EXECUTAR OS COMANDOS PARA CRIAR, ESCREVER, MOVER, COPIAR, RENOMEAR, COMPACTAR E EXTRAIR ARQUIVOS, SÓ PARA RELEMBRAR.

Creio que este objetivo foi atingido.

Agora vou criar um PDF e um ePub deste texto aqui depois vou upar ele na nuvem e disponibilizar o link para quem quiser baixar e ler. Tudo pelo terminal.

Vou copiar este texto para a pasta Modelos. Instalo o programa Calibre.

.

Usarei o exemplo abaixo para converter o arquivo .txt para .epub:

$ ebook-convert nome-do-arquivo.txt nome-do-arquivo.epub –enable-heuristics

.

Fica assim:

ebook-convert Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.txt Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.epub

Agora vou converter o epub para pdf usando o exemplo abaixo:

$ ebook-convert nome-do-arquivo.epub nome-do-arquivo.pdf –enable-heuristics

.

Fica assim:

ebook-convert Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.epub Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal.pdf

Executo os comandos abaixo:

ls -t

ls -lah

ls -C

pwd

exit

,

Abro meu navegador preferido pelo menu do sistema, e começo as postagens e uploads.

.

Amigo, conhecimento é poder e não existe limites para o quanto uma pessoa pode aprender no mundo Linux e o mundo Linux inside na realidade fisica do nosso mundo atual.

.

Até Breve!

.

Link Telegraph

http://telegra.ph/Linux-como-criar-escrever-mover-copiar-renomear-compactar-e-extrair-arquivos-no-linux-usando-o-terminal-08-09

.

Continuando… Revisando…

.

Aprendendo-a-Trabalhar-com-o-Terminal-Linux

.

Aprenda a Trabalhar com o Terminal do Linux – Sistemas Debian e Derivados do Debian. Mas o Bash é padrão em todos os sistemas Linux atualmente, então…

.

Introdução ao uso da linha de comando terminal

.

Trabalhar com a linha de comando não é uma tarefa assustadora.

.

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 ferramenta gráfica para a maioria dos programas, mas, às vezes eles não são suficientes.

Aí que o terminal é útil.

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

Deve-se executar as instruções ao mesmo tempo que lê o artigo e não vale copiar e colar.

Tem que digitar.

Execute tudo que puder, depois descanse meia hora e volte comece de onde parou, ou refaça o caminho novamente.

Se depois de um tempo as coisas ficarem nubladas, volte e refaça o caminho.

É como na vida. Mantenha-se conectado. Supere estes desafios sem pressa um de cada vez.

##

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

‘ – Aspas simples

/ – Barra

\ – Barra invertida

– Traço

& – E comercial

> – Direcionamento destrutivo

>> – Direcionamento

* – Comando de expansão

exit – Sai do terminal

clear – Limpa a tela do terminal

Comandos de teclado

Abrir aplicativos

alt + F2

###

Trabalhando com o terminal

Abrir uma pasta

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:

cd Área (e aperte a tecla Tab)

Vai ficar assim:

$ 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.

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
echo “Os que são apagados no lixo, ainda existem.” >> leitura-semanal.txt ; echo “Já os que foram excluídos, não existem mais. Excluídos não ocupam espaço nenhum” >> leitura-semanal.txt ; echo “Só porque você me apagou, não significa que eu deixei de existir.” >> leitura-semanal.txt ; echo “Meu nome é Duncan. Eu daqui do lixo, tenho para te contar uma história.” >> leitura-semanal.txt ; echo “Talvez você não goste das primeiras linhas, mas, até o senhor dos sonhos dorme,” >> 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

###

TOUCH – O comando usado para criar arquivo de texto vazio, também atualiza a última data de acesso ao arquivo aí se o arquivo não existir, é criado vazio por padrão.

###

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 Linux.

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.

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/).

###

Digite os comandos abaixo no terminal logo após ler.

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 13.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 “*txt*”

find -name “*jpg*”

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

find -name “aluno”

O arquivo precisa ter a palavra “aluno”.

###

RM (Apagar arquivos e pastas)

Para apagar um arquivo basta digitar:

rm nome_do_arquivo

Para apagar completamente uma pasta, basta digitar um dos dois comandos abaixo:

rm -R nome_da_pasta/

rm -r nome_da_pasta

###

PERIGO!!!

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 -Rf nome_da_pasta/

###

PS (Visualizando processos)
Para visualizar processos no Ubuntu basta digitar:
ps -aux (entre o ps e o traço tem um espaço)

###

Vendo Imagens pelo terminal

Digite no terminal:

$shotwell .

Escutando uma música pelo terminal

mpg123 instale com:

sudo apt install mpg123

depois, é só ir para a pasta músicas, listar escolher o nome da música. Aí digite:

mpg123 nome_da_musica

Para ver um filme pelo terminal (a imagem é feita de letrinhas) instale o mplayer. Digite:

sudo apt install mplayer

Navegue pelo terminal até a pasta filmes, liste os filmes para saber os nomes de arquivos. Digite:

mplayer -vo caca nome_do_arquivo_de_video

Abrir programas de música pelo terminal:

Supondo que tenha o audacious para abrir mp3, o vlc para abrir mp4, o firefox como navegador, o evince para pdf.

Como ficaria para abrir pelo terminal com esses programas?

audacious arquivo.mp3 &
vlc arquivo.mp4 &
firefox http://www.vivaolinux.com.br &
firefox arquivo.html &
evince arquivo.pdf &

Imagine que você só queira abrir o programa e não abrir algum arquivo ou página especifico, como você faria?

Simples, retire o nome do arquivo de cena.

O que precisa-se fazer é saber o nome comando que você precisa usar pra chamar o programa. Isto é conhecido colocando um icone do programa na Área de Trabalho clique botão direito do mouse propriedades do programa.

###

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

Deve-se criar nome do novo usuário, criar senha do novo usuário, criar um diretório para os arquivos do novo usuário, alterar o dono do diretório e alterar o grupo.

Claro que tudo isto pode ser feito de modo gráfico e no modo gráfico, você só precisa escolher uma senha e um nome pois, o resto o programa gráfico faz para você.

Pelo terminal, basta utilizar a sequência abaixo (5 comandos):

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”

Digite:

sudo apt install (nome[s]_do[s]_programa[s])
Para remover programas

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

###

Mais sobre o TOUCH

Sintaxe: touch [opções] arquivo
Opções:

-c :: não cria o arquivo, caso este não exista.

-m :: atualiza somente a hora da modificação.

-a :: atualiza somente a data de acesso.

Exemplos:

Atualiza a data de acesso do arquivo, caso não exista, é criado vazio:

touch spcbrasil.txt

Cria o arquivo em branco:

touch arquivo

$ touch arquivo2 arquivo3

rm

Remove arquivos.

Sintaxe: rm [opções] arquivos

Opções:

-f :: não exibe mensagens de confirmação para eliminar arquivos.

-i :: pede confirmação antes de eliminar.

-r :: apaga recursivamente o conteúdo de um diretório.

-v :: exibe o nome de cada arquivo antes de eliminá-lo.

Exemplos:

rm spcbrasil.doc

$ rm -r /diretório/conteúdo

mkdir

Cria diretórios.

Sintaxe: mkdir [opções] nome_diretório
Opções:

-p :: cria os diretórios-pai, se ainda não existirem.

-m perm :: cria um diretório com a permissão de acesso perm.

–verbose :: mostra o nome de cada diretório criado.

.

Exemplos:

Cria o diretório “protegido” com a permissão 600:

mkdir -m 600 protegido

Cria os diretórios “dir1”, “dir2” e “dir3”:

mkdir dir1 dir2 dir3

Cria o diretório “documentos” e o diretório-pai “temp2”:

mkdir -p /operftp/temp1/temp2/documentos

rmdir

Remove diretórios vazios.

Sintaxe: rmdir [opções] diretorio

Opções:

-p :: remove os diretórios intermediários se estes estiverem vazios.

–verbose :: mostra o nome de cada diretório removido.

Exemplos:

rmdir dir1 dir2

Remove o diretório vazio “temp2”:

rmdir /operftp/temp2

Remove os diretórios vazios “documentos”, “temp2” e “temp1”:

rmdir -p /operftp/temp1/temp2/documentos

Apaga todos os arquivos do diretório corrente:

rmdir -ri *

mv

Move ou renomeia arquivos e diretórios.

Sintaxe: mv [opções] fonte destino

Opções:

-b :: faz backup dos arquivos que estão sendo movidos ou renomeados.

-f :: remove arquivos existentes sem confirmação.

-i :: pede confirmação antes de mover um arquivo que irá sobrescrever outro.

-v :: exibe o nome do arquivo antes de movê-lo.
Exemplos:

Move o SPC.doc do diretório “/operftp/origem” para “/operftp/destino”:

mv /operftp/origem/SPC.doc /operftp/destino

Muda o nome do arquivo “spc1.doc” para “spc2.doc”:

mv spc1.doc spc2.doc

Muda o nome do arquivo “spc1.doc” para “spc2.doc” pedindo confirmação ao sobrescrever o “spc2.doc” e criando arquivo de backup:

mv -bi spc1.doc spc2.doc

cp

Copia um ou mais arquivos.

Sintaxe: cp [opções] /caminho/arquivos_fonte /caminho/arquivos_destino

Opções:

-a :: preserva todos os atributos de arquivo.

-b :: faz backup antes de copiar.

-p :: preserva propriedade, permissões e o timestamp do arquivo.

-r ou -R :: copia recursivamente.

-u :: copia somente os arquivos fonte mais novos que os arquivos destino.

Exemplos:

Copia o arquivo “spc1.doc” com o nome de “spc2.doc” pedindo confirmação ao sobrescrever o “spc2.doc”:

cp -i spc1.doc spc2.doc

Copia o arquivo “spc1.doc” do diretório “/operftp/origem” para “/operftp/destino”:

cp /operftp/origem/spc1.doc /operftp/destino

ln

Cria links para arquivos ou diretórios. Cria tanto links simbólicos (soft links), como diretos (hard links).

O padrão é links diretos.

Sintaxe: ln [opções] caminho nome_link

Opções:

-s :: cria link simbólico.
-d :: cria link direto para diretório (só root)
-f :: força a criação do link.
-b :: faz backup de cada arquivo de destino existente.
-i :: pede confirmação antes de remover arquivo.

Exemplos:

Cria o link direto “link1.doc”. Se você apagar o “spc1.doc”, o arquivo “link1.doc” permanecerá e vice-versa.

Se você fizer alterações no “spc1.doc”, essas alterações também aparecerão no “link1.doc” e vice-versa.

O arquivo só desaparecerá se você apagar “spc1.doc” e “link1.doc”.

Obs.: lembre-se de que, em um link direto, associam-se dois ou mais nomes de arquivo a um mesmo inode.

ln /operftp/tmp/spc1.doc link1.doc

Cria o link simbólico “link1.doc”. Se você apagar o “link1.doc”, não perderá o arquivo original.

Você só perderá o arquivo, se apagar o “spc1.doc”:
ln -s /operftp/tmp/spc1.doc link1.doc

###

Comandos de compactação / descompactação

tar

Armazena ou extrai arquivos e diretórios dentro de um único arquivo ou dispositivo.

Sintaxe: tar [opções] arquivos_ou_diretórios

Opções:

-c :: cria um novo arquivo .tar e adiciona a ele os arquivos especificados

-x :: retira os arquivos agrupados no arquivo .tar

-f :: indica que o destino é um arquivo em disco e não uma fita magnética

-v :: exibe o nome de cada arquivo processado

-Z :: compacta ou descompacta arquivos utilizando o comando compress

-z :: compacta ou descompacta arquivos utilizando o comando gzip

-j :: compacta ou descompacta arquivos utilizando o comando bzip2

-M :: múltiplos volumes

-b n :: define o tamanho do bloco de dados utilizado pelo tar (n*512 bytes)

Exemplos:

1. Gera um arquivo de backup do diretório “documentos1”:

tar -cvf documentos.tar documentos1

2. Exibe o conteúdo do arquivo “documentos.tar”:

tar -tvf documentos.tar

3. Extrai o conteúdo do arquivo “documentos.tar”:

tar -xvf documentos.tar

5. Gera um arquivo de backup compactado com bzip2 do diretório “documentos1”:

tar -cvjf memorandos.tar.bz2 documentos1

6. Divide em vários disquetes o arquivo “documentos.tar.bz2”:

tar -cvMf /dev/fd0 /operftp/documentos.tar.bz2

7. Extrai o arquivo de backup armazenado no disquete:

tar -xvMf /dev/fd0

cpio

Executa funções de arquivamento de dados.

Sintaxe: cpio [opções]

Opções:

-o :: lê nomes de arquivos da entrada padrão e os copia para a saída padrão com a informação necessária para a sua recuperação posterior com o comando: cpio -i

-i :: lê da entrada padrão um arquivo criado pelo comando cpio -o e extrai os arquivos armazenados

-v :: exibe o nome de cada arquivo processado

Exemplos:

1. Copia todos os arquivos mencionados em “lista.txt” para o arquivo “backup.cpio”:

cpio -o /operftp/lista.txt > /operftp/backup.cpio

2. Extrai todos os arquivos armazenados em “backup.cpio”:

cpio -i procedimento.zip

compress

Compacta um ou mais arquivos utilizando a compactação Lempel-Ziv.

Sintaxe: compress [opções] arquivos

Opções:

-c :: grava o arquivo compactado na saída padrão e retém o arquivo original

-d :: descompacta o arquivo

-r :: compacta recursivamente arquivos em todos os subdiretórios

Exemplos:

compress documentos.tar

$ compress -d documentos.tar.Z

uncompress

Descompacta um ou mais arquivos que tenham sido compactados com o comando compress.

Sintaxe: uncompress [opções] arquivos

Opções:

-c :: grava o resultado na saída padrão e retém o original

-r :: descompacta recursivamente arquivos em todos os subdiretórios

Exemplo:

uncompress documentos.tar.Z

gzip

Compacta um ou mais arquivos.

Sintaxe: gzip [opções] arquivos

Opções:

-c :: grava o arquivo compactado na saída padrão e retém o arquivo original

-d :: descompacta arquivo. O mesmo que gunzip

-f :: sobrescreve arquivos já existentes

-h :: mensagem de ajuda

-l :: lista o conteúdo de um arquivo compactado

-t :: testa a integridade do arquivo compactado

-n :: não salva o nome original

-r :: compacta recursivamente arquivos em todos os subdiretórios

-L :: exibe a licença do comando
Exemplos:

gzip documentos.tar

$ gzip -d documentos.tar.gz

gunzip

Descompacta arquivos compactados pelos comandos gzip e compress. Utiliza as mesmas opções de gzip.

Sintaxe: gunzip [opções] arquivos

Exemplo:

gunzip documentos.tar.gz

bzip2

Compacta um ou mais arquivos.

Sintaxe: bzip2 [opções] arquivos

Opções:

-z :: força a compressão

-c :: grava na saída padrão

-t :: testa a integridade do arquivo compactado

-f :: sobrescreve arquivos já existentes

-d :: descompacta arquivos. O mesmo que bunzip2

-k :: não apaga os arquivos de entrada

-L :: licença do comando

Exemplos:

bzip2 documentos.tar

$ bzip2 -d documentos.tar.bz2

.

bunzip2

Descompacta arquivos compactados pelos comandos gzip ou compress. Utiliza as mesmas opções de bzip2.

Sintaxe: bunzip2 [opções] arquivos

Exemplo:

bunzip2 documentos.tar.bz2

zip

Compacta um ou mais arquivos.

Sintaxe: zip [opções] arquivo-destino arquivo-origem

Opções:

-e :: permite encriptar o conteúdo de um arquivo ZIP através de senha. A senha será pedida no momento da compactação

-m :: apaga os arquivos originais após a compactação

-r :: compacta recursivamente arquivos em todos os subdiretórios

Exemplos:

zip documentos.zip *.txt

$ zip -r documentos.zip /usr/*.txt

unzip

Descompacta arquivos compactados pelo comando zip.

Sintaxe: unzip [opções] arquivo.zip arquivos-origem [diretório]

Opções:

-l :: exibe os arquivos existentes dentro do arquivo ZIP

-d :: diretório onde os arquivos serão descompactados

-o :: substitui arquivos existentes sem perguntar
Exemplos:

unzip documentos.zip

$ unzip documentos.zip -d /operftp

zcat, zmore, zless, bz2cat

Visualiza o conteúdo de um arquivo texto compactado, sem precisar descompactar o arquivo.

Os comandos zcat, zless e zmore funcionam da mesma forma que cat, less e more. A única diferença, é que esses comandos podem ler diretamente arquivos compactados com gzip ou compress sem precisar descompactar os arquivos.

Exemplos:

zcat nome_arquivo

$ zless nome_arquivo

$ zmore nome_arquivo

$ bz2cat nome_arquivo

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

Continue conectado. Opine. Critique. Corrija. Dê dicas e faça doações.

###

GREP FGREP EGREP – O QUE FAZEM ESTES COMANDOS?

Os comandos grep, fgrep e egrep procuram em um ou mais arquivos por linhas que contém um padrão de busca (expressão regular simples ou estendida).
Sintaxe:

grep [opções] padrão arquivos

fgrep [opções] padrão arquivos

egrep [opções] padrão arquivos

Opções:

-F :: O mesmo que fgrep. Interpreta padrão como uma expressão regular sem metacaracteres.

-E :: Similar a egrep. Interpreta padrão como uma expressão regular estendida.

-r :: Faz procura recursiva.

-e expr :: Procura pela expressão regular expr.

-n :: Exibe o número de linhas que contém o padrão.

-c :: Exibe apenas o número de linhas que contém o padrão de busca.

-f arquivo :: Lê o padrão a partir do arquivo especificado.

-i :: Não diferencia maiúsculas de minúsculas na procura.

-l :: Exibe os nomes de arquivos que contém o padrão.

-v :: Exibe as linhas que não contém o padrão.

-w :: Procura apenas palavras inteiras.

Observação:

recomenda-se que o padrão esteja entre apóstrofos (‘), pois alguns caracteres tem significado especial para o shell e podem ser interpretados erroneamente.

Exemplos:

Procura a palavra “tee” dentro do arquivo /etc/info-dir e exibe o número da linha onde ela ocorre:

grep -n tee /etc/info-dir

70:* tee: (sh-utils) tee invocation. Redirect to multiple files

Procura todos os arquivos abaixo de /etc que possuem a palavra mouse:

grep -r mouse /etc/*

Outros exemplos:

grep -n root /etc/passwd

$ grep -v bash /etc/passwd | grep -v nologin

$ grep -c false /etc/passwd

OBS:

egrep e fgrep não devem ser utilizados em novos scripts.

###

Sugestão

Busque na Rede o seguinte:

Descubra quem é o dono do IP através de um comando shell
Personalizando terminais Aterm, Eterm, RXVT e Xterm
Usando cat para copiar arquivos remotos
Comandos básicos para usar no seu Linux

###

Comandos de paginação

cat – concatena e exibe arquivos.

Sintaxe: cat [opções] arquivo

Opção:

-A :: exibe todos os caracteres especiais.

-b :: numera apenas as linhas não vazias.

-n :: numera todas as linhas na saída.

-v :: exibe caracteres não passíveis de impressão (caracteres de controle).

-e :: exibe final de linha, como $.

-t :: exibe caracteres de tabulação como ^L.
Exemplo:

1. Se você tivesse criado vários arquivos com a palavra test+(outras letras) visualizaria vários arquivos de uma só vez:

cat -n test*

2. Visualiza o arquivo “/etc/mtools.conf” e permite paginação deste com o comando less. Para sair do less, pressione Q:

cat /etc/mtools.conf | less

tac – concatena e exibe arquivos do final para o início.

Sintaxe: tac [opções] arquivo

Exemplo:

Visualiza dois arquivos ao mesmo tempo:

tac -n teste1.txt teste2.txt

more – exibe arquivos texto.

Sintaxe: more [opções] arquivo

Opção:

+n :: exibe o arquivo começando na linha especificada.

-s :: reduz múltiplas linhas em branco a uma única.

Exemplo:

Para visualizar os comandos do more, pressione H. Para sair, Q:

more /etc/mtools.conf

less – exibe arquivos texto.

Sintaxe: less [opções] arquivo

Opção:

-? :: exibe uma lista das opções do comando.

-p texto :: exibe a primeira linha onde texto é encontrado.

-s :: reduz múltiplas linhas em branco a uma única linha.

Exemplo:

less /etc/mtools.conf

###

Privacidade\ na\ Linha\ de\ Comando/

“como fazer para que comandos não sejam gravados no histórico?”

Por padrão, cada comando que digitamos é gravado em um histórico de comandos, que é visualizado pelo comando history.

Exemplo:

history

Porém, para que o comando digitado não seja registrado no histórico de comandos, incluímos antes dele um caractere de “espaço”:

Exemplo:

clear

$ ls /etc > /dev/null
history

38 clear
39 ls /etc
40 history

ls /var

backups cache empty games lib local
lock log mail opt run spool tmp

history

38 clear
39 ls /etc
40 history
41 history

Como pode ver apertando barra de espaço antes de “ls /var”, e este não foi registrado no histórico de comandos.

###

Anotações

Diretório atual digitar “pwd” diz onde vc está.

3 comandos que fazem a mesma coisa “ls” “ls .” “ls ~”
Diretório home (diretório de usuário é identificado por ~) todos os usuários possuem seu próprio diretório onde armazena-se programas e arquivos pessoais.

Localiza-se em /home/[login] se o login é zax o diretório home será /home/zax

Diretório superior identifica-se por dois pontos ..

Diretório Anterior identifica-se por um traço – o traço é útil para retornar ao diretório anterior.

Digite:

cd /usr/

cd /lib

Para retornar use cd –

Para retornar a pasta home digite:

cd

Para voltar uma pasta antes:

cd ..

###

COMANDOS-PARA-GRAVAR-CONVERTER-E-EXTRAIR-VIDEOS-E-AUDIOS-NO-LINUX

.

COMANDOS AVCONV

.

Avconv faz parte do pacote libav-tools e existem muitas formas de usá-la para lidar com stream de multimídia e arquivos.

.

Me informo sobre o pacote libav-tools:

https://libav.org/avconv.html

.

Instalo libav-tools com os comandos abaixo:

.

sudo apt-get update ; sudo apt-get install libav-tools -y

.

Obtendo informações sobre um arquivo multimídia:

avconv -i arquivo.mp4

.

Extraindo o áudio de um arquivo multimídia

avconv -i arquivo.mp4 -vn -f wav arquivo-som.wav

Substitua o nome do arquivo de entrada (arquivo.mp4) pelo nome do arquivo de vídeo.

-vn é uma opção que usada para remover o vídeo do arquivo multimídia.

-f wav é o que define o formato que o arquivo de saída usará. Se quiser, você pode mudar para “mp3” ou “webm”.

arquivo-som.wav é o nome do arquivo de saída.

.

Extraindo o vídeo a partir de arquivo e um arquivo multimídia, pode extrair só o vídeo a partir de um arquivo multimídia que contém vídeo e áudio, usando o seguinte comando:

avconv -i arquivo.avi -vcodec libx264 -an -f mp4 arquivo-video.mp4

Substitua o nome do arquivo de entrada (arquivo.avi) pelo nome do arquivo de vídeo.

-an é uma opção para deixar o áudio do arquivo.

-f mp4 é o formato que será usado para o novo arquivo, você pode mudar para “mkv”, “ogg” .. etc.

Lembre-se, ao fazer isso, você tem que mudar o “video.mp4” para “vídeo.mkv”.

.

Convertendo do formato .avi para .mkv

.

avconv -i arquivo.avi -vcodec libx264 arquivo.mkv

-i arquivo.avi é o arquivo que deseja converter (-i = -input).

-vcodec é uma opção usada para escolher um codec de vídeo para usar durante o processamento da conversão, no caso do exemplo, é “libx264”, esta opção é importante para manter a qualidade do vídeo como ele é.

arquivo.mkv é o nome do arquivo de saída.

.

Convertendo do formato .mp4 para .avi

avconv -i arquivo.avi -vcodec libx264 arquivo.avi

.

Convertendo do formato .mp3 para .wav

avconv -i arquivo.mp3 arquivo.wav

.

Convertendo do formato .yuv para .avi

avconv -i arquivo.yuv arquivo.avi

.

Mesclar vídeo e áudio juntos

avconv -i arquivo.wav -i arquivo.avi arquivo.mkv

.

Convertendo vídeo em imagens


avconv -i arquivo.mp4 -r 1 -s 1366x768 -f image2 image-%03d.png

.

Mais opções para usar com Libav

avconv -i arquivo.avi -vcodec libx264 -vf "drawbox=x=50:y=50:width=400:height=300:color=red@0.5" novo-arquivo.avi

-vf: é uma opção para aplicar um filtro de vídeo (se você quiser usar um filtro de áudio, substitua-o por -af).

drawbox=x=50:y=50:width=400:height=300:color=red@0.5: Aqui foi aplicado um filtro chamado “drawbox” que desenha uma caixa vermelha com 400 de largura e 300 de altura em x = 50 e y = 50.

.

Experimento o comando abaixo, que usa o filtro transpose=cclock para girar o vídeo em 90 graus no sentido horário.

avconv -i arquivo.avi -vcodec libx264 -vf “transpose=cclock” novo-arquivo.avi

.

Registro tty como um Vídeo

Comando que deve ser utilizado pelo usuário root, ele não vai funcionar sem sudo, porque requer o acesso ao dispositivo framebuffer (fbdev).

Fbdev é o dispositivo de entrada framebuffer Linux, este dispositivo é o responsável por mostrar os gráficos do console.

sudo avconv -f fbdev -r 30 -i /dev/fb0 arquivo.avi

* -r 30: é o número de quadros por segundo.

* -i /dev/fb0: é o que está nó executando o arquivo de dispositivo, usando essa opção, você será capazes de capturar o vídeo da tty.

.

Fonte:

http://www.tecmint.com/avconv-command-examples/

Anotação – Instalando o Clementine Player no Linux Mint

.

1- Adiciono repositorio

sudo add-apt-repository ppa:me-davidsansome/clementine

2- Atualizo o sistema

sudo apt-get update

3- Instalo o Clementine

sudo apt-get install clementine

.

Se um dia eu quiser remover o Clementine:

sudo add-apt-repository ppa:me-davidsansome/clementine --remove

sudo apt-get remove clementine

sudo apt-get autoremove

.

Instalando o conjunto de temas Ambiance Blackout Flat Colors no Linux Mint 18

sudo add-apt-repository ppa:ravefinity-project/ppa


sudo apt-get update


sudo apt-get install ambiance-blackout-flat-colors

.

Caso queira um dia desinstalar:


sudo apt-get remove ambiance-blackout-flat-colors

.

Who are YOU? Who? Who?

XXI

.

Quem somos nós, apenas uma centelha semi lúcida de consciência, para dizer o que é, e o que existe na nossa escuridão?

.

O que existe na fria vastidão do universo?

.

Quem sabe o que nos aguarda, depois que o véu da morte é atravessado?

.

Quem somos nós, para dizer que conhecemos a nós mesmos?

.

Quando você fica inconsciente, talvez outras coisas possam usar o seu corpo.

.

A maior parte das pessoas, vive inconsciente o tempo todo.

.

O tempo todo.

.

Blog Semanickzaine

Mais-Bobagens-Mentiras-e-Invenções

2017

Texto/Conto: Mais Bobagens Mentiras e Invenções

.

Conheci a Raena.

Achei ela ótima.

Optou pelo silêncio.

O que Raena podia dizer?

Bom, na minha opinião, ela não podia dizer muita coisa.

Hoje em dia, muitas vezes a gente calado sem falar nada já está errado…

Somos reprimidos e rastreados, por parentes, colegas, instituições, grupos sociais, etc…

Mas pensar, ela pensava.

É difícil dizer o a gente pensa.

Elaborar pensamentos, conseguir juntar ideias, sentimentos e palavras é muito difícil mesmo.

As palavras não são o suficiente, mas é tudo que Raena tinha para brincar.

Provavelmente, ela ainda brinca.

Ela brinca com palavras na cabeça dela mesma.

Mas ela não fala muito.

Quando ela conseguia dizer algo a respeito do que pensava, era perseguida, arrumava inimigos, perdia emprego.

Por isto, passou a guardar seus pensamentos para si mesma.

Ela sussurrando, uma vez me disse muitas coisas numa madrugada de novembro que há tempos foi engolida pelos anos.

O mundo está em guerra desde que a vida apareceu.

Nunca houve um segundo sequer de paz desde então.

Deuses passaram por aqui, e alguns decidiram ficar.

Anjos caminham sobre a terra.

Demônios também.

Monstros, existem e são numerosos.

A maior parte dos monstros são pessoas.

Algumas pessoas nascem monstros.

Outras pessoas tornam-se monstros.

Muitas abrem seus olhos, coração e deixam monstros entrarem.

Depois eles nunca mais vão embora.

As pessoas querem o poder.

As pessoas lutam, mentem, matam, roubam para ter poder.

Quando chegam ao poder, o poder as enlouquece.

Desgraças acontecem.

Parentes morrem.

Existe todo o tipo de colisão.

Muito cadáver estendido na estrada da vida de quem busca o poder.

Quem somos nós, apenas uma centelha semi lúcida de consciência, para dizer o que é, e o que existe na nossa escuridão?

O que existe na fria vastidão do universo?

Quem sabe o que nos aguarda, depois que o véu da morte é atravessado?

Quem somos nós, para dizer que conhecemos a nós mesmos?

Quando você fica inconsciente, talvez outras coisas possam usar o seu corpo.

A maior parte das pessoas, vive inconsciente o tempo todo.

O tempo todo.

Atividades lúdicas fazem bem.

São serviços ofertados para manter a roda a girar.

As pessoas precisam de todos os tipos de cuidados, e hoje em dia ninguém sabe mais cuidar de si mesmo.

Paliativos ou lenitivos não curam a doença.

O passado existe, mas a memória que uma pessoa tem do passado é apenas uma ilusão.

O futuro não existe, por que o futuro é apenas uma possibilidade criada pela ação deste momento fugaz.

A paz é saber ficar quieto em um canto bem gostoso, sem ser incomodar o mundo e não deixar o mundo te incomodar.

A paz não serve pra nada, só a guerra é útil.

Se todos pensassem igual, estaríamos na idade da pedra até hoje.

Ela me disse, que apesar de todas as minhas boas intenções; eu sou um inútil e nada do que eu faça fará diferença nenhuma, na minha história nem na história de ninguém.

Disse que eu nunca passaria fome, mas nunca seria rico, porque eu não sou deste mundo e não me importo com as coisas que os outros seres humanos se importam.

Disse que o meu fim será terrível e eu serei totalmente apagado do livro da vida e nunca mais voltarei a este mundo.

Disse que eu lutaria e venceria gigantes, mas era porque eles precisavam perder.

Eu seria anônimo e seria esquecido a todo momento e isto, é uma dádiva que me foi dada.

Disse que eu um dia, seria um ótimo monstro e ceifaria vidas como a peste.

Disse que meu gene nunca vai permitir me entregar sem luta, quando fosse necessário seria cruel, violento, gostaria disto e um dia, eu não me arrependeria de nada.

O amor nunca atrapalharia minhas decisões, e por isto, ela tinha pena de mim.

Naquela madrugada de novembro que há tempos foi coberta pelos anos, acho que eu a abracei e beijei seus lábios que estavam quentes.

Raena, a meus olhos, era muito bela e agradável.

Sempre gostei de escutar coisas diferentes, e reflito sobre qualquer tolice mais boba que consiga escutar até hoje.

Mas eu não deixo entrar nada.

Depois de anos ao relembrar, acho que muito do que ela disse faz algum sentido.

Realmente não sou capaz de encaixar todas as peças de um quebra-cabeça.

Nunca fui bom nisto.

Mas certas coisas ficam gravadas na gente.

Querendo ou não.

Se o passado é um lugar, garanto que por mim, ele jamais é visitado.

Mas as palavras, ideias, conjecturas, reflexões, mentiras e invenções; até hoje acho fascinantes.

Eu vivo na companhia apenas de mim mesmo num universo escuro cheio de criaturas que não tem nome, e isto é o suficiente.

Mas com o tempo, descobri que o monstro existe.

O monstro fez muitas coisas.

E realmente, existem mais coisas entre o céu e a terra que supõe a nossa vã filosofia, como disse um escritor da Inglaterra.

Espero sinceramente que ela onde estiver hoje em dia, esteja bem.

Linda pessoa a Raena.

.

.

Até Breve

.

😀

.