Есть ли способ сохранить историю команд cmd между сессиями?
windows
command-line
firefusion
источник
источник
Я нашел 2 способа, ни один из которых не требует переключения на PowerShell.
Установите Clink , который дополняет
cmd.exe
постоянная история и многое другое. Просто установите его и откройтеcmd
как обычно.Установите бесплатную версию TCC / LE , которая представляет собой отдельную программу, снова предоставляя расширенную версию
cmd.exe
.источник
cmd.exe
но это хороший ответ, и clink также поддерживает режим впрыска.cmd
с ним, проблем не было, очень доволен.Сохранение истории - это небольшой рабочий процесс - вот менее «тяжелый» способ сделать это (без внешних библиотек).
Создайте файл bat / cmd для настройки своей истории, в данном случае я назвал его MyEnvironment.cmd:
Затем запустите это из «Пуск-> Выполнить» (вы также можете настроить псевдоним для этого):
Каждый раз, когда я закрываю сеанс, я нажимаю «выйти» - или, если я боюсь потерять историю в середине сеанса, я нажимаю «сохранить». Если я хочу найти что-то в истории, я просто нажимаю «Ключевое слово истории».
Согласно комментарию @ dave_thompson_085,
AutoRun
функция работает хорошо, если вы не хотите использовать/K
переключатель. Если вы правильно настроили ключ реестра,.cmd
или.bat
нет необходимости в нем%AppData%
, он может находиться в том же месте, в котором он уже находится.Если вы используете
%AppData%
местоположение, учтите, что cmd, вероятно, будет искать ваш командный файл в папке «Roaming» (вместо корня AppData).Дополнительная информация о функции
AutoRun
CMD: https://superuser.com/a/302553/333316источник
$g
и$t
для чего?$g
вставляет>
, и$t
является разделителем команд.>
и&&
символы непосредственно в Doskey псевдоним?doskey quit=doskey /history
и сохранить результаты создания макроса в лог-файле (либо ничего, либо сообщение об ошибке); затем закройте окно (откажитесь от всего).^
-Я думаю, вы могли бы избежать этих персонажей с помощью вместо. Как^>^>
и^&
(... и да, вам нужен только один амперсанд)/k
можно использоватьAutoRun
superuser.com/a/302553/333316Я использую Cygwin . Он также предоставляет некоторые другие функциональные возможности, которые есть в Linux, но нет в Windows.
источник