Иногда я забываю, как выглядит точный синтаксис команды CMD, и тогда я хотел бы искать свою собственную историю CMD. Очевидно, что в рамках одного сеанса вы можете просматривать его с помощью клавиш со стрелками вверх и вниз, но как насчет истории предыдущих сеансов CMD? Есть ли файл, журнал, в который записывается история, или все это идет в цифровую нирвану?
Спасибо!
windows
windows-command-prompt
history
command
raoulsson
источник
источник
doskey exit=doskey /history ^>^> C:\path\to\cmdhistory.log $T exit $*
но вам необходимо выяснить, как выполнить это автоматически при каждом запуске сеанса командной строки. PS: убедитесь, что путь к файлу журнала доступен для записи.C:\
недоступно для записи для командной строки без прав администратора.Ответы:
Нет, историю командной строки Windows нельзя сохранить после завершения сеанса.
источник
doskey.exe /history
(к тому же, откуда и ярлык F7, BTW), но нет способа загрузить его обратно в следующем сеансе.Не изначально, но посмотрите: http://mridgers.github.io/clink/ , делает cmd.exe гораздо более продуктивным. Цитирование функций со страницы проекта:
источник
~/.inputrc
при использовании клинк? (а знаете ли вы, можно ли использовать консоль или еще что-нибудь?)clink
ненавидитdoskey
; забудь все свои долгие годы и тщательно назначенные псевдонимы. вот почему я перестал его использовать. хотя я скучаю по всем функциям.Массимо прав, что история вашей командной строки не сохраняется между сеансами. Вы можете вручную захватить это перед закрытием вашего приглашения, набрав doskey / history> history.txt
Или ... вы можете использовать PowerShell в качестве приглашения CMD и следовать этому посту, чтобы сохранить свою историю между сеансами.
источник
Вы можете использовать клинк .
Самым простым способом установки клинка является использование шоколада . После установки Chocolatey вы можете установить clink, набрав
Начиная со следующего запуска cmd.exe, он должен хранить историю между сеансами.
источник
Chocolatey
шанс из-за этого поста. Установка была такой же простой, как иbrew
в macOS. И теперь у меня есть Bash-подобная командная строка в Windows!Можно сохранить текущую историю в файл,
Но, похоже, нет способа загрузить его обратно в историю. Можно использовать только аргумент командной строки для загрузки и выполнения всех строк,
cmd.exe /K somefile.txt
, что может быть полезно для загрузки списка макросов doskey. Этот вызов может быть включен в ярлык, поэтому вам не нужно вводить его каждый раз; эта ссылка имеет некоторую дополнительную информацию об этом подходе .
Существует аналогичный вопрос о Superuser, который предлагает некоторые альтернативы, в том числе clink , как предложено @RobertBak.
источник
История команд. Чтобы включить историю команд (доступ к которой можно получить с помощью клавиш со стрелками вверх и вниз), просто введите doskey в командной строке. Например, чтобы создать историю команд из 100 элементов:
ссылка: https://users.cs.jmu.edu/bernstdh/web/common/help/ntshell.php
источник
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
Кроме того, поскольку в этом решении используется инфраструктура журнала событий Windows, вы можете запросить ее через WMI или PowerShell
Get-EventLog
. С помощью clink вы должны изучить другой инструмент, чтобы обнаружить паттерны поведения в системе или сети.источник