Как просмотреть, сохранить и очистить историю команд командной строки в Windows
Командная строка – это не что иное, как черно-белая утилита командной строки, которая поставляется из коробки в Windows 10/8/7. Но те, кто знает его истинный потенциал, это отличная замена для стороннего программного обеспечения многих пользователей. Например, он может помочь вам организовать разделы жесткого диска, создать загрузочный USB-накопитель, обновить все файлы BIOS и многое другое. Многие администраторы и опытные пользователи, как правило, используют несколько команд в этой командной строке для выполнения своей работы. Сегодня мы поговорим о 2 методах, которые помогут пользователю просматривать историю своих командных строк, и об одном способе сохранения этой истории в Windows 10.
Просмотр, сохранение, очистка истории команд командной строки
Мы рассмотрим следующие темы:
1] Просмотр истории команд с помощью DOSKEY
Этот метод довольно прост. После того, как вы ввели ряд команд в окне командной строки, все, что вам нужно сделать, это ввести следующую команду в том же окне командной строки:
После этого вы сможете проверить все команды, которые вы только что ввели во время этого сеанса, в командной строке в той же последовательности, в которой вы их вводили.
Вы можете проверить фрагмент экрана того же самого выше.
2] Просмотр истории CMD с помощью клавиши F7
Это лучше, чем метод DOSKEY, упомянутый выше. Я не утверждаю, что, поскольку это лучше, но если вы просто хотите вернуться к какой-либо ранее выполненной команде, это действительно надежно.
Это приведет к появлению небольшого всплывающего окна со списком всех ранее выполненных команд в сеансе.
2] Сохранить историю командной строки
Иногда вам может потребоваться сохранить записи команд, которые они использовали в сеансе с использованием командной строки, в файле TXT, HTML, CSV или RTF.
Для этого вы можете использовать расширение команды DOSKEY.
Затем сохраненный файл истории будет сохранен в том месте, где вы выполнили команду в окне командной строки.
4] Очистить историю командной строки, используя Alt + F7
Самый простой способ – перезапустить командную строку. История команд очищается автоматически каждый раз, когда вы ее закрываете и снова запускаете командную строку.
Вы также можете удалить историю команд с помощью редактора реестра. Перейдите к следующей клавише:
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RunMRU
Далее выберите RunMRU и сотрите все значения, имеющие имя, букву алфавита в правой панели. После этого щелкните правой кнопкой мыши MRUList > Изменить и удалите содержимое данных значений.
Дополнительные советы и рекомендации по командной строке здесь.
Как в Windows 10 просматривать и сохранять историю команд CMD и PowerShell
Работая в классической командной строке или PowerShell, вы в любой момент можете нажать F7 и просмотреть историю всех выполненных команд. И не только просмотреть, но и выбрать любую из них. Это очень удобная и полезная функция, которая позволяет экономить время при повторном наборе команд, но пользоваться ее преимуществами получится только в текущем сеансе.
Как только сессия закрывается, вся история команд тут же удаляется. Если вас это не устраивает, и вы хотите сохранять историю так, чтобы она была доступна и после закрытия консоли, придется обратиться к ее расширенным возможностям. Поддерживаются таковые и классической командной строкой, и более совершенным ее аналогом PowerShell.
Командная строка
Для получения списка выполненных команд помимо клавиши F7 можно использовать специальную команду doskey с ключом history. История выводится непосредственно в консоль и также доступна только в текущей сессии, поэтому для ее сохранения используем обычное перенаправление в файл, например, вот так, дешево и сердито:
doskey /history > C:/20.05.20.log
Формат файла истории не обязательно должен быть LOG, уместны также форматы TХT, HTML, CSV и даже RTF.
Утилита PowerShell
В случае с консолью PowerShell всё куда интереснее. Начиная с пятой версии консоль сохраняет все введенные и выполненные командлеты в текстовый лог ConsoleHost_history.tхt, расположенный по пути %userprofile%/AppData/Roaming/Microsoft/Windows/PowerShell/PSReadline.
Даже если вы завершите сессию в консоли и выключите компьютер, команды останутся сохраненными и будут доступны для вызова в PowerShell нажатием клавиши «Стрелка вверх». Каждое нажатие выводит предыдущую команду, но можно отобразить и весь список выполненных команд сразу. Делается это так:
Отвечающий за историю модуль поддерживает и другие функции. Если вы введете команду Get-PSReadlineOption, то получите в консоли приличный список доступных параметров. Ознакомиться с их назначением можно в официальной документации к PowerShell, но смысл некоторых из них понятен и так. К примеру, нетрудно догадаться, что ключ MaximumHistoryCount устанавливает максимальное число элементов, сохраняемых в список истории.
В целом, начинающему администратору вполне должно хватить данного функционала для облегчения работы в консоли. Если же вдруг при выполнении любой из приведенных выше команд появится ошибка «имя командлета не распознано», это с большой долей вероятности укажет на отсутствие требуемого модуля. Установить его в Windows 10 с PowerShell v5 можно командой Install-Module PSReadLine с последующим разрешением на подключение поставщика NuGet.
История команд в командной строке Windows
При работе в командной строке Windows иногда приходится повторять те или иные команды. К счастью, разработчики Windows приберегли для пользователей возможность работать с историей команд. Посмотрим, как можно упростить себе жизнь.
Используя клавиши со стрелками вверх и вниз (↑↓), можно перемещаться по истории команд.
F1 или клавиша со стрелкой вправо (→) выведут по одному символу из последней выполненной команды.
F3 и F5 копируют последнюю команду целиком.
F4 выполнит удаление последней команды до указанного символа.
F6 вставляет символ EOF (конец файла).
F7 выводит историю команд. Перемещаться по ней можно клавишами со стрелками вверх и вниз (↑↓). Если нажать Enter, команда повторится. Если нужно выйти из отдельного окна с историей, нажмите Esc.
F8 последовательно перебирает список выполненных команд.
Кстати, для просмотра истории команд можно использовать команду
А о работе с историей команд в Linux можно прочитать в отдельной статье.
Как просмотреть и повторно использовать историю команд CMD
Таким образом, также достигается то, что Windows доступна для всех, включая новых пользователей программного обеспечения. При этом Redmond включает в себя все более автоматизированные и доступные функции, которые адаптируются к потребностям большинства. Это то, что многие из вас смогли увидеть из первых рук, даже когда решали возможные проблемы что может произойти здесь.
Многие параметры конфигурации, которые мы можем использовать на данный момент, хорошо распределены в приложении System Configuration. Мы получаем к нему доступ через Win + I комбинация клавиш, в которой мы находим параметры, доступные в этом конкретном разделе.
Дополнительные возможности Windows 10
Но, конечно, как вы понимаете, не все ищут простоты при работе со своим компьютером в Windows. Есть много более продвинутых пользователей, которые предпочитают всегда иметь больший контроль над своим оборудованием. Для них Microsoft также предлагает несколько более продвинутых функций, чтобы дать им больший контроль над операционная система как таковой.
Для всего этого просто откройте окно командной строки и приступайте к работе. Мы делаем это, набирая Команда CMD в поле поиска, которое мы видим рядом с меню «Пуск». Кроме того, в большинстве случаев лучше всего запускать этот элемент с правами администратора.
Командная строка или утилита CMD
Как просмотреть последние использованные команды в окне CMD
Как только мы открываем одно из этих окон, как мы показали вам ранее, интересно знать, что все, что мы делаем в этом сеансе, сохраняется. При этом мы хотим сказать вам, что с момента открытия окно командной строки пока мы его не закроем, сохраняется история использованных нами команд. Поэтому у нас есть ряд уловок, чтобы получить доступ ко всему этому. Например, чтобы просмотреть последнюю выполненную команду, нам просто нужно нажать клавишу со стрелкой вверх. Это то, что мы можем повторять столько раз, сколько захотим, чтобы вернуться и восстановить те, которые использовались в сеансе.
С другой стороны, интересно знать, что если мы хотим увидеть всю историю команд, выполненных в сеансе, нам просто нужно нажать клавишу F7. Затем на экране появится небольшое окно, в котором вы можете увидеть все команды, выполненные в этом сеансе CMD, в том порядке, в котором мы их использовали в то время.
Другие ярлыки для получения команд в CMD
В нем у нас также есть возможность перемещаться с помощью клавиш со стрелками от одной к другой, пока мы не найдем команду, которую ищем, и не будем использовать ее снова. В свою очередь, если мы знаем, какую позицию занимает конкретная команда для повторного выполнения, мы можем использовать сочетание клавиш F9. Он попросит нас ввести место, которое он занимает, и восстановить его, чтобы запустить его снова.
Но если мы хотим восстановить команду, которая начиналась с определенной установленной буквы из них, мы пишем этот символ и нажимаем F8. Это покажет нам все команды, выполненные в этом сеансе, которые начинаются с этого письмо или слово. Кроме того, чтобы увидеть эти приказы выполнения в алфавитном порядке, просто выполните команду doskey / history.
В заключение скажем вам, что для того, чтобы стереть историю что мы здесь использовали, мы должны нажать комбинацию клавиш Alt + F7.
Есть ли глобальная, постоянная история CMD?
Иногда я забываю, как выглядит точный синтаксис команды CMD, и тогда я хотел бы искать свою собственную историю CMD. Очевидно, что в рамках одного сеанса вы можете просматривать его с помощью клавиш со стрелками вверх и вниз, но как насчет истории предыдущих сеансов CMD? Есть ли файл, журнал, в который записывается история, или все это идет в цифровую нирвану?
Нет, историю командной строки Windows нельзя сохранить после завершения сеанса.
/.inputrc при использовании клинк? (а знаете ли вы, можно ли использовать консоль или еще что-нибудь?)
Массимо прав, что история вашей командной строки не сохраняется между сеансами. Вы можете вручную захватить это перед закрытием вашего приглашения, набрав doskey / history> history.txt
Clink сочетает в себе встроенную оболочку Windows cmd.exe с мощными функциями редактирования командной строки библиотеки GNU Readline, которая обеспечивает богатые возможности завершения, истории и редактирования строк.
Начиная со следующего запуска cmd.exe, он должен хранить историю между сеансами.
Можно сохранить текущую историю в файл,
Но, похоже, нет способа загрузить его обратно в историю. Можно использовать только аргумент командной строки для загрузки и выполнения всех строк,
cmd.exe /K somefile.txt
История команд. Чтобы включить историю команд (доступ к которой можно получить с помощью клавиш со стрелками вверх и вниз), просто введите doskey в командной строке. Например, чтобы создать историю команд из 100 элементов:
clink хорош, и автор публикует шоколадный пакет на каждом выпуске, однако я бы предложил DeepBlueCLI.
Вы можете использовать https://github.com/sans-blue-team/DeepBlueCLI для настройки идентификатора события безопасности Windows 4688.
Для PowerShell DeepBlueCLI также использует ведение журнала модулей (событие PowerShell 4013) и ведение журнала сценариев (4104). Он не использует транскрипцию.
Дополнительным преимуществом является то, что он регистрирует хэш командной строки exe в журнале событий AppLocker. Источник: https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing















