Anbefalt, 2024

Redaktørens valg

Skriv ut og spør kommandohistorikken for å finne spesifikke tidligere kommandoer

SCP-3665 øyeblikkelig demon bare tilsett blod! | objektssikker | ritual / væske / container scp

SCP-3665 øyeblikkelig demon bare tilsett blod! | objektssikker | ritual / væske / container scp

Innholdsfortegnelse:

Anonim

Hvis du prøver å huske en nøyaktig kommando du utførte via terminalen, men ikke helt kan komme med den, kan du spørre i kommandolinjens historie for å finne gamle kommandoer som har blitt kjørt eller utført i det siste.

Dette trikset for å finne og hente tidligere kommandoer utført på kommandolinjen fungerer på Mac OS, Mac OS X, så vel som linux og andre Unix-operativsystemer. Alt med en standard historie-kommando kan bruke dette trikset for å hente tidligere kommandoer, noe som gjør det til et uvurderlig verktøy for systemadministratorer og kommandolinjebrukere.

Hvordan finne spesifikke kommandoer fra kommandohistorikk i Mac OS

For å spore opp kommandohistorikken til en bestemt kommando, må du åpne Terminal-appen og deretter bruke følgende syntaks:

history |grep "search string"

Dette vil se etter "søkestreng" i kommandologgen og bare skrive ut forekomster som inkluderer søketeksten.

Hvis du ikke er kjent med terminalen og lurer på hvorfor dette kan være nyttig, la oss ta et eksempel.

Eksempel: Søke på tidligere standardinnstillinger
Her er et praktisk eksempel: Jeg prøvde å huske den nøyaktige syntaks for en skrivekommando som jeg nylig brukte. Standardinnstillingene er ofte lange tekststrenger som endrer oppførsel til Mac OS X eller visse applikasjoner, på grunn av deres lengde og uklarhet. Det er vanskelig å si det mildt å prøve å huske en av disse utenfor hodet.

I stedet for å slå pil opp for å bla gjennom tidligere henrettelser i en evighet, brukte jeg følgende for å begrense kommandohistorikken til bare ting med "standard skriv" som så:

history | grep "defaults write"

Dette passerer resultatene av den omfattende 'historikk' -kommandoen gjennom grep for å finne bare forekomster som inkluderer "standard skriving" i kommandostrengen. Du vil se en resultatliste som ligner noe slikt:

$ 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

Nå i stedet for å søke gjennom hele historielisten din, har du innsnevret resultatene.

Raffinering av kommandohistorikken Søk etter spesifikasjoner

Du kan gjøre historiens søk så spesifikt eller uspesifikt som du vil. Hvis jeg for eksempel kjente standardkommandoen jeg lette etter, gjaldt com.apple.iTunes, kunne jeg bruke følgende kommando for å avgrense søket ytterligere:

history |grep "defaults write com.apple.iTunes"

Som ville returnert noe som:

44 defaults write com.apple.iTunes full-window -1
51 defaults write com.apple.iTunes invertStoreLinks -bool YES

Prøv det selv. Du kan gjøre dette med hvilken som helst kommando du har angitt gjennom terminalen, siden alle nylig utførte kommandoer er lagret i historikken din. Standard-kommandoen er Mac OS X-spesifikk, men historie og grep er verktøy som er generiske for unix-verdenen, så hvis du noen gang er på en Linux-maskin eller på annen måte kan du bruke de samme teknikkene.

Hvis du liker å lære om understøttelsene til Mac OS X, kan du sjekke tipsene våre på kommandolinjen.

Top