Sei que algumas pessoas têm alguns scripts de inicialização e outras personalizam o prompt. Um desenvolvedor usa aliases curtos para o longo caminho que ele costuma visitar e os comandos frequentes que ele executa.
Quais são todas as customizações efetivas que você fez no seu perfil UNIX para aumentar a produtividade e a facilidade de uso?
Respostas:
.vimrc
salve o arquivo com permissões de root digitandow!!
:.bashrc
Não se preocupe com dispositivos ou arquivos binários aogrep
ing:Compartilhe código na Web (como pastebin, mas mais simples),
cat 1337.sh | webshare
Ele devolve um pequeno URL na sua área de transferência; você pode anexar
?whatever-lang
ao URL retornado para realçar a sintaxe e numerar as linhas..inputrc
Use o modo vi em tudo que usa a biblioteca readline (muitos programas):fonte
crie um diretório e cd em um comando
Na maioria das vezes
mkdir
, meu próximo comando écd <that dir>
.Isso economiza digitação:
por exemplo:
Outra coisa que acho útil é uma maneira fácil de criar um diretório descartável. por exemplo, se estou compilando um programa ou mesmo tentando reproduzir um problema neste site. Às vezes eu posso esquecer de limpar o diretório.
mostrando funcionando:
Estou contando com a limpeza do sistema
/tmp
após uma reinicialização, mas seria possível melhorar isso, por exemplo, faça com que ele exclua o diretório temp após sair do shell.fonte
mcd
há muitos anos e adicionarei algo como emmtd
breve.mtd() { mcd $TMP/`date +%y%m%d-%H%M%S-%N`; }
. Provavelmente falta uma portabilidade, mas é bom o suficiente para mim.Eu gostaria que meu prompt do bash mostrasse o código de saída do comando anterior, se fosse diferente de zero. Também gosto da minha concha para me animar quando a uso, então acrescentei um pouco de tolice:
então, quando executo comandos, recebo um bom feedback visual:
edit : isso é algo que eu coloquei no meu ~ / .bashrc
fonte
.bashrc
presumivelmente.até N
pule N diretórios para cima na árvore de diretórios
Em vez de digitar
você apenas digita
e um
vai te trazer de volta
Coloque a função no seu .bashrc para usá-lo.
fonte
.zshrc
:.xmodmaprc
:(Alterna as teclas Escape e Caps Lock).
fonte
Eu estrago no meu bashrc, já que uso muito o terminal (isso me faz aprender rápido e aprender coisas interessantes para usar, além de ferramentas interessantes). Eu costumo definir muitas funções no meu bashrc. Exemplos:
Extrair arquivos:
renomeie arquivos e pastas:
e assim para dividir arquivos grandes em vários pequenos:
Também editei muitos aliases, pois acho que é muito mais fácil usar um comando com argumentos como padrão em alguns casos (como nos comandos ls, grep e small) e depois digitar tudo isso sempre.
fonte
(Wiki da comunidade, portanto, cada truque pertence a uma resposta separada.)
logout seguro
Ctrl+ Dé a maneira mais fácil de sair do shell, mas se você ainda tiver trabalhos em execução, ele sairá feliz do shell de qualquer maneira. Por padrão, isso significa que todos os programas que você estava executando dentro desse shell serão mortos.
Algumas conchas apenas permitem que você saia após pressionar Ctrl+ Dduas vezes, mas ainda é muito fácil fazer isso acidentalmente.
Então, em vez disso, adicione a
.bashrc
ou.zshrc
ou qualquer arquivo de configuração que você preferir.fonte
(Wiki da comunidade, portanto, cada truque pertence a uma resposta separada.)
pesquise no seu histórico todas as maneiras pelas quais você executou um comando
Você já deve saber sobre o Ctrl+ R, mas esse caminho é muito mais suave no IMHO.
Configure Alt+ Ppara pesquisar no histórico os comandos que começam com o que você já digitou.
por exemplo ,
ls
Alt+ P, Alt+ P, Alt+ P pesquisará todos os seusls
comandos para trás .Você precisa colocar isso no seu
/etc/inputrc
ou.inputrc
parabash
:e isso no seu
.zshrc
parazsh
:Você pode dar um passo adiante e fazer a seta para cima fazer isso.
fonte
calculadora simples
Você pode usar
$(( ... ))
ouexpr ...
fazer cálculos muito básicos, mas faz divisão inteira, por exemploUma maneira melhor é usar
bc
.então:
fonte
alias py='PYTHONSTARTUP=~/.pythonstartup python'
comfrom math import *;
nesse arquivo. O problema da divisão de números inteiros permanece sem solução, mas é muito mais útil para operações mais complexas.melhor conclusão da guia
Acho que ninguém mencionou a personalização do Tabpreenchimento ainda.
Aqui está o que eu tenho.
As duas principais coisas que faz são:
por exemplo
cd <Tab>
, apenas sugerirá diretóriospor exemplo
d<Tab>
, ainda será concluídoDesktop
eDownloads
Para o bash:
Para zsh:
fonte
Compressão segura
Programas de compactação excluem o arquivo original por padrão. Eu não gosto disso.
Prompt de várias linhas
Você pode exibir "tags" com variáveis de ambiente. Exemplo:
O código é pelo menos parcialmente baseado nisso .
Configurações do histórico
fonte
fonte
Se você pode LIGAR A CORREÇÃO AUTOMÁTICA E NOME DO ARQUIVO! Essas são provavelmente as duas coisas que você economizará mais tempo. Em seguida, aprenda a usá-los - Bash e Zsh têm preenchimento de guias. O Ksh tem uma barra invertida de escape ineficiente, então eu recomendaria contra o Ksh.
Eu uso o Zsh, mas aliases como esse funcionariam em quase qualquer shell, exceto o Csh:
Parece que um pseudônimo para 'ps' deve estar lá, mas eu me vejo usando 'ps' de várias maneiras e não encontrei nada até agora.
No Zsh, configure sua variável RPROMPT (não um erro de digitação!):
O diretório inteiro aparece no lado direito da linha de comando, pronto para cortar e colar. Mais sobre isso mais tarde.
Você deve usar um Vim moderno compilado adequadamente, devido à capacidade de ter várias janelas vim em um arquivo e vários buffers. Seu .vimrc pode ter coisas como esta:
Muitas são preferências pessoais, mas acredito que as guias de 8 espaços tornam o código menos legível, e há um estudo por aí para provar isso.
Além disso, o "mouse = c" é importante. Você não deve usar o mouse para se mover dentro de um arquivo. Retirar as mãos do teclado, tocar no mouse e movê-las de volta é lento. Use o movimento do cursor "hjkl" e outras teclas de paginação e movimento do cursor.
Se você estiver usando o X11, faça algumas coisas na sua configuração do Xterm. Isso sai do meu arquivo .Xresources:
Dê ao Xterm uma barra de rolagem por padrão, salve 1000 linhas de texto no buffer, isso é bastante padrão.
A diretiva charClass faz com que uma "palavra" inclua itens como '.', '/' E '*'. Clique duas vezes em qualquer parte de um nome de arquivo separado por '/' e você obtém a coisa toda, menos os caracteres ':'.
cutToBeginningOfLine funciona com o Zsh RPROMPT acima. Clique três vezes no caminho do diretório de trabalho atual que aparece no RHS da sua linha de comando e você escolhe apenas o caminho: a cópia é interrompida no início da palavra. Altamente eficiente quando você estiver acostumado.
Os recursos X acima também transformam a chave em colar. Dessa forma, depois de copiar (provavelmente usando o mouse), você pode colar sem mover a mão de volta ao mouse para clicar.
fonte
Esc``Esc
ou estáEsc``=
dentroksh
eTab
funcionaksh93
. Apenas no caso de alguém ficar preso ou preferir.Adicionar um valor de retorno diferente de zero do último comando é uma ótima idéia. Eu acho que o pôster original estava perguntando especificamente sobre .profile / .cshrc / .bashrc. Vale a pena mencionar a lista de outros arquivos RC comumente personalizados, mas gostaria de apenas personalizar as shell para esta pergunta.
Também adicionei recentemente um sinalizador no meu prompt que aparece quando o shell está sendo executado na tela. Ele usa o comando solaris "ptree" para pesquisar processos ancestrais, mas você pode usar o comando "pstree" no Linux para fazer a mesma coisa.
Levei alguns minutos para descobrir como incorporar o código de retorno do último comando, então eu o publicarei aqui.
Tenho certeza de que isso poderia ser mais bonito. :-)
Dica para o futuro, tenha cuidado ao ler $? depois de usar "if [". Se o colchete esquerdo for incorporado, ele não substituirá o valor de $ ?. Mas se você usar um shell em que [não esteja embutido, ele redefinirá o valor de $? após o teste. É mais seguro atribuir $? em uma variável temporária imediatamente e, em seguida, teste essa variável.
fonte
mostra o arquivo alterado mais recentemente
Muitas vezes, quero olhar para o arquivo mais recente. por exemplo, eu posso estar no diretório de logs e quero ver qual arquivo é mais recente, porque esse é o primeiro lugar para ver por que algo não está funcionando.
ls -lt | head
é um tipo complicado de digitar, então aqui está uma alternativa:Também é necessário um curinga ou lista de arquivos, por exemplo
o que é especialmente útil se todos os seus arquivos de log tiverem um carimbo de data / hora em seu nome. Você pode encontrar o log mais recente desse programa, sem se preocupar em que formato está o carimbo de data / hora.
E aqui está uma versão estendida que suporta uma
-<number>
opção para imprimir<number>
linhas em vez de uma.fonte