Opdrachtgeschiedenis afdrukken en opvragen om specifieke opdrachten uit het verleden te vinden

Inhoudsopgave:

Anonim

Als je je een exact commando probeert te herinneren dat je via de Terminal hebt uitgevoerd, maar het niet helemaal kunt bedenken, kun je je opdrachtregelgeschiedenis opvragen om oude commando's te ontdekken die zijn uitgevoerd of uitgevoerd in het verleden.

Deze truc om eerdere opdrachten die in de opdrachtregel zijn uitgevoerd te vinden en op te halen, werkt op Mac OS, Mac OS X, maar ook op Linux en andere Unix-besturingssystemen.Alles met een standaard geschiedeniscommando kan deze truc gebruiken om eerdere commando's op te halen, waardoor het een hulpmiddel van onschatbare waarde is voor systeembeheerders en gebruikers van de commandoregel.

Specifieke opdrachten zoeken in de opdrachtgeschiedenis in Mac OS

Om de opdrachtgeschiedenis van een bepaalde opdracht op te sporen, moet u de Terminal-app openen en vervolgens de volgende syntaxis gebruiken:

"

geschiedenis |grep-zoekreeks"

Hiermee wordt gezocht naar "zoekreeks" in uw opdrachtgeschiedenis en worden alleen exemplaren afgedrukt die de zoektekst bevatten.

Als je niet bekend bent met de Terminal en je je afvraagt ​​waarom dit nuttig zou kunnen zijn, laten we dan een voorbeeld nemen.

Voorbeeld: zoeken naar eerdere "standaard"-opdrachten Hier is een praktisch voorbeeld: ik probeerde me de exacte syntaxis van een standaardschrijfopdracht te herinneren die ik onlangs heb gebruikt. De standaardcommando's zijn vaak lange tekstreeksen die het gedrag van Mac OS X of bepaalde programma's wijzigen, vanwege hun lengte en onduidelijkheid is het op zijn zachtst gezegd een uitdaging om een ​​van deze uit je hoofd te onthouden.

In plaats van op de pijl omhoog te drukken om een ​​eeuwigheid door eerdere uitvoeringen te scrollen, gebruikte ik het volgende om mijn opdrachtgeschiedenis te beperken tot alleen dingen met "standaard schrijven", zoals:

"

geschiedenis | grep defaults schrijven"

Dit geeft de resultaten van het uitgebreide 'history'-commando door via grep om alleen instanties te vinden die "defaults write" bevatten in de commandoreeks, je ziet een resultatenlijst die er ongeveer zo uitziet:

"

$ geschiedenis |grep defaults schrijven 44 defaults schrijven com.apple.iTunes full-window -1 51 defaults schrijven com.apple.iTunes invertStoreLinks -bool JA 421 defaults schrijven com.apple.FaceTime AutoAcceptInvitesFrom -array-add [email protected] 426 standaardwaarden schrijven com.twitter.twitter-mac ESCSClosesComposeWindow -bool true 427 standaardinstellingen schrijven com.twitter.twitter-mac ESCSluitenComposeWindow -bool false 428 standaardwaarden schrijven com.apple. appstore ShowDebugMenu -bool true "

Nu in plaats van door je hele geschiedenislijst te zoeken, heb je de resultaten beperkt.

De opdrachtgeschiedenis verfijnen Zoeken naar details

U kunt de geschiedeniszoekopdracht zo specifiek of niet-specifiek maken als u wilt. Als ik bijvoorbeeld wist dat het standaardcommando waarnaar ik op zoek was betrekking had op com.apple.iTunes, zou ik het volgende commando kunnen gebruiken om mijn zoekopdracht verder te verfijnen:

"

geschiedenis |grep defaults schrijf com.apple.iTunes"

Dat zou iets opleveren als:

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

Probeer het zelf. U kunt dit doen met elke opdracht die u via de terminal hebt ingevoerd, aangezien alle recent uitgevoerde opdrachten in uw geschiedenis worden opgeslagen. De standaardopdracht is Mac OS X-specifiek, maar geschiedenis en grep zijn tools die generiek zijn voor de wereld van Unix, dus als je ooit op een Linux-machine zit of anderszins, kun je dezelfde technieken gebruiken.

Als je meer wilt weten over de basis van Mac OS X, bekijk dan onze opdrachtregeltips.

Opdrachtgeschiedenis afdrukken en opvragen om specifieke opdrachten uit het verleden te vinden