Se você está começando segue 30 comandos básicos
Há uma grande quantidade de comandos no Linux. O propósito deste tópico é facilitar a busca por comandos que facilitam o dia a dia. Apesar de poder fazer no ambiente gráfico, muitas das vezes via comando é mais prático e rápido.
Muitos já conhecem find, cp , mv e outros comandos que utilizamos. Aqui vou colocando alguns comandos que para alguns devem ser desconhecidos e são uma mão na roda.
No momento não posso colocar as saídas de todos os comandos apresentados, mas se o pessoal achar interessante mais tarde adiciono. Vou apresentar só alguns comando agora, mas depois vou adicionando mais.
Apropos pesquisa e exibe o nome e a descrição abreviada de uma palavra-chave, por exemplo, um nome de comando, conforme escrito na página de manual desse comando. Serve para procurar um comando
Pesquisar pela palavra rm
$ apropos rm
Pesquisar pelo texto
$ apropos 'remove file'
As páginas TLDR (significa “Too Long; Didn’t Read“. - “Longo Demais” e “Não Li”.) São resumidos exemplos práticos de uso de comandos em diferentes sistemas operacionais, incluindo Linux. Eles simplificam as páginas de manual, oferecendo exemplos práticos.
Mais infformação em https://tldr.sh/ que vc encontrará uma demonstração antes de instalar https://tldr.ostera.io/
- Mostrar sumário do ls
$ tldr ls
$ tldr -u
#atualizar cache local
ou
$ tldr -c
#limpar cache local
FD, é uma ferramenta simples, rápida e fácil de usar, cujo objetivo é simplesmente executar mais rapidamente do que encontrar. Não se destina a substituir completamente o find, mas fornece uma alternativa fácil de usa e que ao executar é um pouco mais rápido, de modo fácil e prático.
- Encontre arquivos que correspondam a amostra especificada no diretório atual:
$ fd teste
- Encontrar arquivos que iniciam com “foo”:
$ fd '^foo'
- Encontrar arquivos com uma especifica extensão:
$ fd --extension txt
- Encontrar arquivos em um específico diretório:
$ fd teste path/to/dir
- Incluir arquivos ignorados e ocultos na pesquisa:
$ fd --hidden --no-ignore teste
O comando findmnt é um utilitário de linha de comando simples usado para exibir uma lista de sistemas de arquivos atualmente montados ou procurar um sistema de arquivos em /etc/fstab, /etc/mtab or /proc/self/mountinfo.
- Para listar de modo árvore
$ findmnt
- Para usar saída no formato de lista
$ findmnt -l
- Para limitar o conjunto de sistemas de arquivos por tipos no fstab
$ findmnt --fstab -t ext4
- Saida do fstab convertendo rótulos (LABEL,UUID,PARTUUID,PARTLABEL)
$ findmnt --fstab --evaluate
OBS: Você pode usar um alias para uma demostração do mount parecida com findmint
alias cmount='mount | column -t'
SDIFF é um utilitário de linha de comando simples para mostrar as diferenças entre dois arquivos e mesclar interativamente. É fácil de usar e vem com opções simples de uso.
$ cal >cal.txt
$ df -h >du.txt
$ sdiff du.txt cal.txt
$ sdiff du.txt cal.txt
Sist. Arq. Tipo Tam. Usado Disp. Uso% Montado em | fevereiro 2020
dev devtmpfs 3,4G 0 3,4G 0% /dev | do se te qu qu se sá
run tmpfs 3,4G 9,3M 3,4G 1% /run | 1
/dev/sda6 ext4 25G 13G 11G 54% / | 2 3 4 5 6 7 8
tmpfs tmpfs 3,4G 79M 3,3G 3% /dev/shm | 9 10 11 12 13 14 15
tmpfs tmpfs 3,4G 0 3,4G 0% /sys/fs/cgroup | 16 17 18 19 20 21 22
tmpfs tmpfs 3,4G 37M 3,4G 2% /tmp | 23 24 25 26 27 28 29
/dev/sda5 vfat 50M 135K 50M 1% /boot/efi |
/dev/sdb2 ext4 30G 8,3G 20G 30% /var <
/dev/sdb3 ext4 457G 223G 212G 52% /home <
tmpfs tmpfs 690M 12K 690M 1% /run/user/1000 <
Como mostrar asteriscos ao digitar a senha do Sudo no Linux
$ sudo EDITOR=nano visudo
Procure a seguinte linha.
Defaults env_reset
E acrescente pwfeedback a ele, para que fique assim.
Defaults env_reset,pwfeedback
Salve a modicação
E corra o comando env_reset
$ reset
GREP - Como encontrar uma seqüência específica ou Word em arquivos e diretórios
Use o grep
Onde a opção -R diz ao grep para ler todos os arquivos em cada diretório, seguindo recursivamente, seguindo os links simbólicos apenas se estiverem na linha de comandos e a opção -w instrui-o a selecionar apenas as linhas que contêm correspondências que formam palavras inteiras e -e é usado para especificar a sequência (padrão) a ser pesquisada.
$ sudo grep -Rw / -e 'teste'
Adicione í para igonrar palavras maiúsculas e minúsculas
$ sudo grep -Riw / -e 'teste'
Procurar mais de uma palavra
sudo grep -Riw /home/ -e 'teste' -e 'Documentos'
EXA - Um substituto moderno para “ls Command” escrito em Rust
- Saida simples
$ exa
- Sainda listando
$ exa -l
- Saida com visual facil de ler, mostrando inodes, tamanho, blocos e etc…
$ exa -bghHliS
INXI - Um comando simples e completo para obter informações da sua distro Linux
- Para uma visualização completamente
$ inxi -F
Adicionado
Pode utilizar como um CP
O Rsync é melhor, pois copia apenas as partes atualizadas do arquivo atualizado caso necessário, em vez do arquivo inteiro. Ele também usa compactação e criptografia, se desejar. Alem de ter um tipo de progresso da cópia usando --info=progress2
$ sudo rsync -rtpl --info=progress2 /home/. /backup
Outros exemplos
- Transfer file from local to remote host:
$ rsync path/to/local_file remote_host:path/to/remote_directory
- Transfer file from remote host to local:
$ rsync remote_host:path/to/remote_file path/to/local_directory
- Transfer file in archive (to preserve attributes) and compressed (zipped) mode with verbose and human-readable progress:
$ rsync -azvhP path/to/local_file remote_host:path/to/remote_directory
- Transfer a directory and all its children from a remote to local:
$ rsync -r remote_host:path/to/remote_directory path/to/local_directory
- Transfer directory contents (but not the directory itself) from a remote to local:
$ rsync -r remote_host:path/to/remote_directory/ path/to/local_directory
- Transfer only updated files from remote host:
$ rsync -ru remote_host:path/to/remote_directory path/to/local_directory
- Transfer file over SSH and delete local files that do not exist on remote host:
$ rsync -e ssh --delete remote_host:path/to/remote_file path/to/local_file
- Transfer file over SSH and show global progress:
$ rsync -e ssh --info=progress2 remote_host:path/to/remote_file path/to/local_file