Друк і запит історії команд, щоб знайти конкретні попередні команди

Зміст:

Anonim

Якщо ви намагаєтеся запам’ятати точну команду, яку ви виконували через термінал, але не можете її придумати, ви можете запитати історію командного рядка, щоб знайти старі команди, які запускалися або виконувалися в минулому.

Цей трюк для пошуку та отримання попередніх команд, виконаних у командному рядку, працює на Mac OS, Mac OS X, а також на Linux та інших операційних системах Unix.Усе, що має стандартну команду історії, може використовувати цей прийом для отримання попередніх команд, що робить його безцінним інструментом для системних адміністраторів і користувачів командного рядка.

Як знайти певні команди в історії команд у Mac OS

Щоб відстежити історію команд певної команди, потрібно відкрити програму «Термінал» і використати такий синтаксис:

"

історія |рядок пошуку grep"

Це шукатиме «рядок пошуку» у вашій історії команд і друкуватиме лише ті екземпляри, які містять текст пошуку.

Якщо ви не знайомі з терміналом і вам цікаво, чому це може бути корисним, розглянемо приклад.

Приклад: пошук минулих команд «за замовчуванням» Ось практичний приклад: я намагався пригадати точний синтаксис команди запису за замовчуванням якими я нещодавно користувався. Команди за замовчуванням часто являють собою довгі текстові рядки, які змінюють поведінку Mac OS X або певних програм, оскільки через їхню довжину та незрозумілість намагатися запам’ятати одну з них, м’яко кажучи, складно.

Замість того, щоб натискати стрілку вгору, щоб прокручувати минулі виконання протягом цілої вічності, я використав наступне, щоб звузити свою історію команд лише до речей із «записом за замовчуванням»:

"

історія | grep defaults write"

Це передає результати розширеної команди 'history' через grep, щоб знайти лише випадки, які включають «defaults write» у командному рядку, ви побачите список результатів, який нагадує щось на зразок цього:

"

$ 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 за замовчуванням запис com.twitter.twitter-mac ESCClosesComposeWindow -bool true 427 за замовчуванням запис com.twitter.twitter-mac ESCClosesComposeWindow -bool false 428 за замовчуванням запис com.apple. appstore ShowDebugMenu -bool true "

Тепер замість пошуку по всьому списку історії ви звузили результати.

Удосконалення пошуку в історії команд для особливостей

Ви можете зробити пошук в історії як конкретним, так і неконкретним. Наприклад, якби я знав, що команда defaults, яку я шукав, стосується com.apple.iTunes, я міг би використати таку команду, щоб уточнити пошук:

"

history |grep defaults write com.apple.iTunes"

Що буде повертати щось на зразок:

44 за замовчуванням write com.apple.iTunes full-window -1 51 за замовчуванням write com.apple.iTunes invertStoreLinks -bool ТАК

Спробуйте самі. Ви можете зробити це за допомогою будь-якої команди, яку ви ввели через термінал, оскільки всі нещодавно виконані команди зберігаються у вашій історії. Команда defaults є специфічною для Mac OS X, але history і grep є загальними інструментами для світу unix, тому, якщо ви коли-небудь користуєтеся машиною Linux або іншим чином, ви можете використовувати ті самі методи.

Якщо вам подобається вивчати основи Mac OS X, перегляньте наші поради щодо командного рядка.

Друк і запит історії команд, щоб знайти конкретні попередні команди