Estou curioso para saber qual truque você usa para se lembrar de opções para vários comandos? Procurar páginas de manual o tempo todo consome tempo e não é tão legal!
manpáginas é muito legal ... :)
Estou curioso para saber qual truque você usa para se lembrar de opções para vários comandos? Procurar páginas de manual o tempo todo consome tempo e não é tão legal!
manpáginas é muito legal ... :)
Respostas:
O truque é simples: você simplesmente não. É uma perda de tempo e simplesmente não é necessária. Memorizar opções de comando não é uma habilidade particularmente útil. É muito mais importante entender como as coisas funcionam em geral e ter uma vaga idéia de quais ferramentas existem em primeiro lugar e para que você as utiliza. Uma habilidade muito importante aqui é saber como descobrir coisas que você ainda não conhece.
As páginas de manual são demoradas? Não tão. Não é como se você tivesse que lê- los - pelo menos nem sempre - existe uma função de pesquisa. Portanto, se eu não me lembro qual opção enigmática foi a opção hdparmpara desativar o timer ocioso em alguns discos WD, eu faço man hdparme /idle3e ei, foi -J. Procurar coisas assim é tão rápido que nem me lembro de fazê-lo depois.
Imagine alguém realmente memorizando todas as hdparmopções. Que perda de tempo.
Tudo bem se você se lembrar de opções porque as usa com frequência. Isso acontece automaticamente, sem sequer pensar nisso. Mas, conscientemente, gastando tempo memorizando-os ... para que serve? Um teste de papel?
man hdparm | less -p idle3é também uma maneira prática de saltar para o termo desejado ...
rm -i -f -r, ln -s, df -s -h, cp -r -i, ls -l -h -a, etc. (a lista varia de pessoa para pessoa).
O Zsh possui a função run-help , por padrão vinculada a Alth. Com essa função, você pode começar a digitar um comando com muitas ou complexas opções difíceis de lembrar, como rsyncpor exemplo, e manabrir a página desse comando . Então:
rsync Alth
leia a manpágina e calcule quais comutadores são necessários, pressione qe retorne ao prompt de comando, exatamente de onde parou, pronto para concluir o comando com as opções necessárias:
rysnc -azP file dir/
Como observa o wiki:
A função pode ser personalizada ainda mais, definindo funções auxiliares do formulário run-help-command. Existem três funções disponíveis na distribuição padrão: run-help-git, run-help-svk e run-help-svn.
bashpossui o bash-completeque fornecerá muitas opções de parâmetros para muitos comandos.
zsh
bashnão suporta adicionar descrições à lista de conclusão nem agrupar entradas ( --classify -F -- append file type indicatorspor exemplo, na conclusão do GNU ls do zsh), portanto, não é tão útil quanto o zsh.
Usar um histórico de comandos muito longo e pesquisar nele é muito útil.
Eu basicamente coleciono todos os arquivos de histórico do shell e o grep através deles.
Em muitos casos, os resultados encontrados são muito úteis, pois é fácil procurar boas palavras-chave.
Procurando um argumento específico que você usou, como uma URL, você encontra os comandos e opções relacionados também. E, ao procurar por opções específicas, você também encontrará argumentos relevantes.
A maioria dos comandos tem --help para referência rápida, e geralmente é o suficiente para lembrar o que eu costumava saber.
Dito isto, tenha o hábito de escrever --help em vez de -h ou até - ?. Você nunca sabe o que é -h antes de procurar a saída de uso ou a página de manual. Na pior das hipóteses, o -h pode ser uma mão curta para a destruição automática perigosa.
--help. -?necessidades citando com zsh, csh, tcshou fishou se existem arquivos cujos nomes são -seguidos por um único caractere no diretório atual. -:pode ser preferível lá.
Uma opção que eu gosto é criar aliases que tenham as mesmas opções ou opções semelhantes, por exemplo
alias rmi='rm -i'
alias rmiv='rm -iv'
alias rmv='rm -v'
alias cpr='cp -r'
alias cprv='cp -rv'
Dessa forma, você tem um bom atalho que em breve se lembrará facilmente, mas que também reterá informações sobre as opções reais que ele reflete.
Outra abordagem com aliases é escolher as opções mais comuns e criar um alias super curto que as use. Por exemplo, lseu quase sempre faço lisso porque eu tenho:
alias l='ls -alFtrG'
Outra opção é apenas trazer as opções que você gosta para o comando base, por exemplo
alias ls='ls -F --color=always'
Finalmente pratique, pratique, pratique e paciência. Continue digitando opções comuns e, eventualmente, você as aprenderá. Os mais comuns em dias, outros em semanas e sim alguns levam anos para serem conhecidos por você. Pense nisso como um prazer, pois a programação unix continuará a entretê-lo por um longo tempo.
Outra opção de que gosto é um apelido para facilitar a pesquisa no meu histórico e, por isso, tenho dois apelidos semelhantes:
alias hg='history | tail -200 | grep -i'
alias hga='history | grep -i'
Estes permitem-me procurar usos de um comando, por exemplo:
hg lsmostrará todos os usos recentes de ls da história
hga lsmostrará todos os usos de ls de toda a minha história.
Eu desenvolvi hg depois de descobrir que hga tendia a mostrar muito.
rm -ivfaz, provavelmente também não se lembrará do que rmivfaz. Eu não acho que é o hífen que é o problema.
rm -ivpara safe_deleteourm_prompt
Eu normalmente faço:
man ${CMD} | grep 'what was I thinking about?'
Ou alguma variação disso. Com alguns greps, você pode especificar -C / A / B para o contexto , depois e antes, respectivamente. Caso contrário, nle sedpode ser bem compatível:
man hdparm | #hard to forget
nl -bp'idle3' -nln -w1 | #I had to grep man to put this together
sed -n '/^[0-9]/{N;N;N;s///p}' #no print until line begins w/ number, next,next,next
Drive's "idle3" timeout value. This timeout
controls how often the drive parks its heads
and enters a low power consumption state.
The factory default is eight (8) seconds,
zero (0) to disable the WD idle3 timer com‐
pletely (NOT RECOMMENDED!).
-k Get/set the "keep_settings_over_reset" flag
As mesmas técnicas funcionam com --helpmenus, se você os tiver, mas pode ser necessário fazer isso ${CMD} --help 2>&1 | ..filter..porque é uma prática bastante padrão para imprimir essas coisas stderr.
Enfim, acho que a moral da história é, lembre-se de pelo menos man e grep. Talvez não se preocupe o resto.
grepmanejar páginas quando procuro um recurso específico, o que é bastante útil.