Imprima e consulte o histórico de comandos para localizar comandos anteriores específicos
Índice:
Se você está tentando se lembrar de um comando exato que executou por meio do Terminal, mas não consegue encontrá-lo, consulte o histórico da linha de comando para descobrir comandos antigos que foram executados ou executados no passado.
Este truque para localizar e recuperar comandos anteriores executados na linha de comando funciona no Mac OS, Mac OS X, bem como no Linux e em outros sistemas operacionais unix.Qualquer coisa com um comando de histórico padrão pode usar esse truque para recuperar comandos anteriores, tornando-o uma ferramenta inestimável para administradores de sistemas e usuários de linha de comando.
Como encontrar comandos específicos do histórico de comandos no Mac OS
Para rastrear o histórico de um determinado comando, você precisa abrir o aplicativo Terminal e usar a seguinte sintaxe:
history |grep search string"
Isso procurará por “string de pesquisa” em seu histórico de comandos e imprimirá apenas instâncias que incluam o texto de pesquisa.
Se você não conhece o Terminal e está se perguntando por que isso pode ser útil, vamos dar um exemplo.
Exemplo: Pesquisando comandos "padrão" anteriores Aqui está um exemplo prático: eu estava tentando lembrar a sintaxe exata de um comando de gravação padrão que usei recentemente. Os comandos padrão geralmente são longas sequências de texto que modificam o comportamento do Mac OS X ou de certos aplicativos, devido ao seu tamanho e obscuridade, tentar lembrar um deles de cabeça é, no mínimo, um desafio.
Em vez de apertar a seta para cima para percorrer as execuções passadas por uma eternidade, usei o seguinte para restringir meu histórico de comandos a apenas coisas com “gravação padrão” como:
"história | grep defaults write"
Isso passa os resultados do extenso comando 'history' através do grep para encontrar apenas instâncias que incluem “defaults write” na string de comando, você verá uma lista de resultados semelhante a esta:
"$ history |grep defaults write 44 defaults write com.apple.iTunes full-window -1 51 defaults write com.apple.iTunes invertStoreLinks -bool YES 421 defaults write com.apple.FaceTime AutoAcceptInvitesFrom -array-add [email protected] 426 defaults write com.twitter.twitter-mac ESCClosesComposeWindow -bool true 427 defaults write com.twitter.twitter-mac ESCClosesComposeWindow -bool false 428 defaults write com.apple. appstore ShowDebugMenu -bool true "
Agora, em vez de pesquisar em toda a lista de histórico, você restringiu os resultados.
Refinando a pesquisa do histórico de comandos para obter detalhes
Você pode tornar a pesquisa do histórico tão específica ou inespecífica quanto desejar. Por exemplo, se eu soubesse que o comando padrão que estava procurando pertencia a com.apple.iTunes, poderia usar o seguinte comando para refinar ainda mais minha pesquisa:
"history |grep defaults write com.apple.iTunes"
Que retornaria algo como:
44 defaults write com.apple.iTunes full-window -1 51 defaults write com.apple.iTunes invertStoreLinks -bool YES
Experimente você mesmo. Você pode fazer isso com qualquer comando inserido pelo Terminal, pois todos os comandos executados recentemente são armazenados em seu histórico. O comando defaults é específico do Mac OS X, mas history e grep são ferramentas genéricas para o mundo do unix, portanto, se você estiver em uma máquina linux ou não, poderá usar as mesmas técnicas.
Se você gosta de aprender sobre os fundamentos do Mac OS X, confira nossas dicas de linha de comando.