Udskriv og forespørge kommandohistorik for at finde specifikke tidligere kommandoer
Indholdsfortegnelse:
Hvis du prøver at huske en nøjagtig kommando, du udførte via terminalen, men ikke helt kan finde på det, kan du forespørge på din kommandolinjehistorik for at finde gamle kommandoer, der er blevet kørt eller udført i fortiden.
Dette trick til at finde og hente tidligere kommandoer udført på kommandolinjen fungerer på Mac OS, Mac OS X, såvel som linux og andre unix-operativsystemer.Alt med en standard historikkommando kan bruge dette trick til at hente tidligere kommandoer, hvilket gør det til et uvurderligt værktøj for systemadministratorer og kommandolinjebrugere.
Sådan finder du specifikke kommandoer fra kommandohistorik i Mac OS
For at spore kommandohistorikken for en bestemt kommando skal du åbne Terminal-appen og derefter bruge følgende syntaks:
historie |grep søgestreng"
Dette vil søge efter "søgestreng" i din kommandohistorik og kun udskrive forekomster, der inkluderer søgeteksten.
Hvis du ikke er bekendt med terminalen, og du undrer dig over, hvorfor det kan være nyttigt, så lad os tage et eksempel.
Eksempel: Søgning efter tidligere "defaults"-kommandoer Her er et praktisk eksempel: Jeg prøvede at genkalde den nøjagtige syntaks for en standard skrivekommando som jeg for nylig brugte. Standardkommandoerne er ofte lange tekststrenge, der ændrer opførsel af Mac OS X eller visse programmer, på grund af deres længde og uklarhed, er det mildest t alt en udfordring at prøve at huske en af disse fra toppen af dit hoved.
I stedet for at trykke på pil op for at rulle gennem tidligere henrettelser i en evighed, brugte jeg følgende til at indsnævre min kommandohistorik til kun ting med "standardskrivning" som sådan:
"historie | grep standarder skrive"
Dette sender resultaterne af den omfattende 'history'-kommando gennem grep for kun at finde forekomster, der inkluderer "defaults write" i kommandostrengen. Du vil se en resultatliste, der ligner noget som dette:
"$ historie |grep standarder skriv 44 standardindstillinger skriv com.apple.iTunes fuld-vindue -1 51 standardindstillinger skriv com.apple.iTunes invertStoreLinks -bool JA 421 standardindstillinger skriv com.apple.FaceTime AutoAcceptInvitesFrom -array-add [email protected] 426 standardindstillinger skriv com.twitter.twitter-mac ESCClosesComposeWindow -bool true 427 defaults skriv com.twitter.twitter-mac ESCClosesComposeWindow -bool default skriv com.apple.apple false 428apple false. appstore ShowDebugMenu -bool true "
Nu i stedet for at søge gennem hele din historieliste, har du indsnævret resultaterne.
Forfining af kommandohistorikken Søg efter detaljer
Du kan gøre historiksøgningen så specifik eller uspecifik, som du vil. For eksempel, hvis jeg vidste, at standardkommandoen, jeg ledte efter, vedrørte com.apple.iTunes, kunne jeg bruge følgende kommando til at finjustere min søgning yderligere:
"history |grep defaults write com.apple.iTunes"
Hvilket ville returnere noget som:
44 standardindstillinger skriv com.apple.iTunes fuld vindue -1 51 standardindstillinger skriv com.apple.iTunes invertStoreLinks -bool JA
Prøv det selv. Du kan gøre dette med enhver kommando, du har indtastet gennem terminalen, da alle nyligt udførte kommandoer er gemt i din historie. Standardkommandoen er Mac OS X-specifik, men historie og grep er værktøjer, der er generiske for unix-verdenen, så hvis du nogensinde er på en linux-maskine eller på anden måde, kan du bruge de samme teknikker.
Hvis du kan lide at lære om grundlaget for Mac OS X, så tjek vores kommandolinjetip.