Aprenda o básico da concha do ZSH
- 4385
- 660
- Randal Kuhlman
Objetivo
Instale o zsh com oh meu zsh e aprenda os recursos básicos.
Distribuições
O ZSH está disponível nos repositórios de quase todas as distribuições.
Requisitos
Uma instalação do Linux em funcionamento com privilégios root.
Dificuldade
Fácil
Convenções
- # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de
sudo
comando - $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular
Introdução
Bash não é ruim. Faz bem o trabalho, mas você já considerou como seria se Bash tivesse alguns recursos extras para tornar mais conveniente trabalhar com? Isso é mais ou menos o que é ZSH.
Ele inclui todos os recursos que você esperaria do Bash, mas também tem algumas adições muito boas para facilitar sua vida. Na verdade, você ficará surpreso com o quanto eles facilitam o trabalho na linha de comando.
Instale o zsh
Primeiro, você precisará instalar o ZSH. É incrivelmente popular, então você não terá nenhum problema em encontrá -lo nos repositórios da sua distribuição.
Ubuntu/Debian
$ sudo apt install zsh
Fedora
# dnf -y install zsh
CENTOS
# yum -y install zsh
OpenSuse
# zypper em zsh
Arch Linux
# Pacman -S ZSH
Gentoo
# emerge --ks zsh
Você provavelmente entendeu a ideia. É possível usar o ZSH apenas digitando -o como um comando em bash. Esse terminal em particular mudará para o ZSH temporariamente. É melhor apenas mudar permanentemente, embora. Não custará nada, e você pode fazer tudo o que normalmente faria exatamente da mesma maneira. Além disso, você pode voltar exatamente da mesma maneira, se você realmente quiser.
$ chsh -s /bin /zsh
Você pode querer re-login ou fechar todos os seus terminais para que a mudança tenha efeito.
Instale oh-my-zsh
Agora que você tem o ZSH instalado e ativado como seu shell padrão, é uma * boa ideia para pegar um complemento para o ZSH, chamado Oh-My-Zsh. É um pacote de tema e plugins que aprimora a funcionalidade existente de Zsh. Não o desacelerará ou atrapalha, então pegue isso e instale -o.
$ sh -c "$ (Curl -fsl https: // RAW.GithubUserContent.com/robbyrussell/oh-my-zsh/mestre/ferramentas/instalação.sh) "
Se você quiser ler mais sobre isso antes de instalar, confira o projeto https: // github.com/robbyrussell/oh-my-zsh
.
O arquivo de configuração
Assim como Bash tem .Bashrc
, Zsh tem .ZSHRC
. É o arquivo único que contém as opções de configuração para o shell e você pode usá -lo para definir aliases e personalizar o comportamento do tempo de execução. A partir de agora, você realmente tem um bom conjunto de padrões graças a Oh-My-Zsh, que configurou o arquivo durante sua instalação.
Temas
O ZSH suporta a THE THE THE PROMPT. Ele vem com alguns temas embutidos, mas eles não são tão bons quanto os que vêm com oh-my-zsh. Você pode dar uma olhada na aparência do https: // github.com/robbyrussell/oh-my-zsh/wiki/temas
OH-MY-ZSH WIKI.
Para mudar seu tema, aberto .ZSHRC
e encontre a linha abaixo. Mude o nome do tema para qualquer um que você queira experimentar.
Zsh_theme = "Robbyrussell"
Plugins
Oh-my-zsh também trouxe uma montanha de plugins. Levaria muito tempo para cobri -los todos aqui, então verifique o https: // github.com/robbyrussell/oh-my-zsh/wiki/plugins
Wiki Oh-My-Zsh para toda a lista. Independentemente de quais outros você escolhe, permitindo extrair
e z
É uma boa ideia. Mais uma vez, seus plugins são definidos com uma linha em .ZSHRC
.
plugins = (extrato git z)
Conclusão da guia
Bash tem conclusão de guias, mas é fraco na melhor das hipóteses. Zsh leva a conclusão da guia para um novo nível. Tente digitar ls
seguido pelo nome de um diretório. Após o nome, pressione a guia duas vezes em rápida sucessão. O ZSH exibirá automaticamente os arquivos e pastas dentro do diretório que você nomeou. Você pode navegar por esses diretórios usando as teclas de seta. Pressione Enter naquele que deseja ver e execute o comando.
A mesma coisa funciona com outros comandos também. Experimente com cd
.
Não são apenas os diretórios que o ZSH pode completar com a guia. Funciona com comandos também. Tente digitar Mk
e pressionando a guia duas vezes. Você terá o mesmo tipo de menu com comandos diferentes que começam com Mk
.
Diretório de abreviação
Você odeia digitar caminhos longos de diretório? Zsh tem uma solução para isso também. Ele suporta sua própria versão de abreviação, que permite digitar apenas as primeiras duas letras de cada diretório no caminho. Isso os combinará com o caminho completo da melhor maneira possível. Se encontrar vários resultados, ele os exibirá para você escolher.
Tente entrar $ ls/u/sh/ico
na guia Terminal e Pressioning. O ZSH o expandirá para o caminho completo para o diretório de ícones compartilhados.
Apelido
Esta é uma característica do Oh-my-zsh, não a própria concha, mas ainda é realmente conveniente. Oh-my-zsh vem com uma pilha de excelentes aliases para tudo que formam diretórios de navegação para programas comuns como Git e Systemd. Novamente, há mais do que há tempo para ir aqui, mas aqui estão algumas luzes.
CD… /… =… CD… /… /… =…… mkdir -p = md rmdir = rd git add = ga CurrentBranch = ggpull git push Origin
Se você quiser conferir a lista inteira, novamente o https: // github.com/robbyrussell/oh-my-zsh/wiki/trapaceiro
Wiki é a sua melhor aposta.
Z
Z
Na verdade, não faz parte do Zsh ou Oh-My-Zsh, é apenas ativado como um plug-in por este último. Mesmo assim, ele se encaixa facilmente com o mesmo estilo de uso que o ZSH permite. Z
é um script que acompanha os diretórios usados e recentes frequentemente, para que você possa acessá -los com um único trabalho ou combinação de caracteres.
Por exemplo, se você tivesse uma pasta em /Home/User/Pictures/Photography/Canon/2017/Pics
, E você o usa o tempo todo, você pode usar Z
Para encurtar isso drasticamente. Com Z
Você usaria o seguinte comando linux para inserir esse diretório.
$ z Pics
Sim, é tão ridiculamente fácil.
Pesquisa de processo de morte
Pode ser uma dor matar um processo que não responde. Primeiro, você precisa usar ps
Para encontrar o processo ofensivo. Então, você precisa usar matar
e o número do processo selecionado. Zsh simplifica esse processo. Digitar matar
seguido pelo nome, ou parte do nome, do processo ou programa que você deseja matar. Em seguida, use a guia para dizer ao ZSH para descobrir o ID do processo.
Use este com um grau de cautela, embora. Digamos que você queira matar um Firefox sem resposta, mas você tem o FireJail correndo com outro programa. Digitando Mate fogo
Pode não conseguir o que você está procurando, digitando Mate o Firefox
Provavelmente vai. Também não é realmente uma boa ideia brincar com este como raiz. Você realmente não quer entrar em algo como matar sys
e derrubar PID 1.
Comando histórico específico
Às vezes, olhar para trás no histórico de comando é uma dor gigante. Você precisa desse comando que você escreveu há 20 linhas porque você não tem certeza de quais alternantes você usou e não consegue encontrá -lo, apesar de toda a razão. Bem, o ZSH suporta a história específica do comando. Então, se você sabe que o comando que você usou foi du
, digitar du
E então comece a pressionar a seta para cima. Você só verá seus usos recentes do comando du.
Switch Search
Enquanto as páginas do homem são ótimas, elas não são tão convenientes quando você está apenas procurando escrever um comando único rápido. Além disso, sempre há muito mais lá do que uma referência básica dos interruptores disponíveis. O ZSH tem um recurso incrível que permite pesquisar com switches enquanto escreva seu comando. Comece o comando, escreva o painel associado ao interruptor e pressione a guia. Zsh exibirá as opções disponíveis para você. Na maioria das vezes, perguntará se você deseja que ele exiba todos os itens, pressione y
confirmar.
Globbiing
Você já usou um personagem curinga para procurar algo do terminal?
$ ls -l *.png
Isso é uma forma de global. Globbing é essencialmente expressões regulares para a concha. Enquanto o Bash o apoia, o ZSH expande seus recursos de globo muito além do Bash.
Tente digitar este comando em seu /lar
diretório usando o zsh.
$ ls **/*
Sim, isso é muito lixo no seu terminal. Esse comando realmente lista tudo no seu diretório atual, bem como em todos os subdiretos. Você pode usá -lo para encontrar tipos de arquivo específicos também.
$ ls **/*.TXT
Isso é tudo o que .TXT
arquivos em seu /lar
diretório.
Você pode especificar um nome completo de arquivo também. Tente usá -lo para encontrar tudo Leia-me
arquivos em seu /lar
diretório.
$ ls **/readme.*
Você também pode procurar palavras ou frases dentro dos nomes de arquivos.
## começa com leitura $ ls **/(leia)*.*## termina com leitura $ ls **/*(leia).*## contém leitura em qualquer lugar $ ls **/*(leia)*.*
Essa é uma maneira realmente estranha de listar arquivos. Existem algumas maneiras muito fáceis de especificar arquivos e pastas.
# Arquiva apenas $ ls **/*(.) # Pastas apenas $ ls **/*(/)
Você também pode especificar um de vários caracteres.
# Todos os arquivos que começam com $ ls **/[a]*(.) # Todos os arquivos que começam com um ou $ ls **/[aa]*(.) # Todos os arquivos que contêm o número $ ls **/*[1]*(.) # Quaisquer arquivos que terminem em uma vogal $ ls **/*[aeiouy] (.)
Se você quiser excluir um personagem ou personagens, você também pode fazer isso.
# Arquivos que não começam com um ou $ ls **/[^aa] (.)
Você pode procurar variações de letras também.
# Arquivos que terminam em um número $ ls **/*(.)
Qualificadores de Glob
Existem outras opções que você pode usar para classificar e filtrar os resultados da sua pesquisa. Estes são chamados de qualificadores globais e tornam simples a pesquisa de seus arquivos.
Primeiro, você pode restringir o tamanho do arquivo com eu
.
$ ls -lahs **/*(.LM+250)
O exemplo acima mostra apenas arquivos de arquivos maiores que 250 MB em ordem de tamanho.
Então, eu
restringe por tamanho. Está emparelhado com k
, m
, e g
Para especificar unidades de tamanho. Então, há um número positivo ou negativo para definir um ponto de corte e determinar se os resultados estarão acima ou abaixo desse ponto.
Confira mais alguns.
# Liste todos os arquivos abaixo de 1 GB por tamanho $ ls -lahs **/*(.LG -1) # Liste todos os arquivos acima de 10 MB por tamanho $ ls -lahs **/*(.Lm+10) # Liste todos os arquivos que começam com um menor de 100 MB por tamanho $ ls -lahs **/[a]*(.LM-100)
Também existem qualificadores para filtrar por modificação e acesso. Eles são m
e a
respectivamente. Eles podem ser emparelhados com s
, m
, h
, d
, c
, e M
. Esses representam segundos, minutos, horas, dias, semanas e meses.
Para listar todos os arquivos modificados dentro da semana passada, tente isto.
$ ls -lah **/*(.mw-1)
O número na declaração significa quantos da unidade olhar para trás. Isso encontraria todos os arquivos modificados nos últimos 3 dias.
$ ls -lah **/*(.md-3)
Existem outros qualificadores menos comuns para explorar, e você pode absolutamente reuni -los para restringir suas pesquisas ainda mais.
Auto correção
Este último recurso é muito bom. Todo mundo está mesmo e complicado e teve que ti. É simplesmente irritante. Zsh tenta ajudar. Se o ZSH detectar uma palavra que parece uma versão enevoada de um comando real, ele perguntará se você deseja corrigi -lo e executar o comando, salvando -se o problema de ter que redigir tudo.
Dê uma chance criando um diretório, da maneira errada.
$ mdkir em alguns vezes
Zsh para o resgate!
Pensamentos finais
Lá está, zsh em toda a sua glória. Isso não é algo que você pode ler aqui e saber imediatamente. É uma ferramenta que você pode pegar agora e usar exatamente como se você tivesse. Em seguida, você pode começar a experimentar diferentes recursos e integrá -los lentamente aos seus hábitos usuais.
Depois de começar a se acostumar com o zsh, você perceberá o quanto gosta e confia nele. Não é nada realmente revolucionário, mas fornece todos os tipos de conveniências que você provavelmente deseja que você pense ou tenha anos atrás.
Tutoriais do Linux relacionados:
- Coisas para instalar no Ubuntu 20.04
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Coisas para instalar no Ubuntu 22.04
- Comandos Linux: os 20 comandos mais importantes que você precisa para…
- Comandos básicos do Linux
- Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
- Instale Arch Linux na estação de trabalho VMware
- Download do Linux
- Coisas para fazer depois de instalar o Ubuntu 22.04 Jellyfish…
- Melhor distro Linux para desenvolvedores