История команд — это функция многих оболочек операционных систем , программ компьютерной алгебры и другого программного обеспечения , которая позволяет пользователю вызывать, редактировать и повторно запускать предыдущие команды .
История командной строки была добавлена в Unix в оболочке C Билла Джоя в 1978 году; Джой черпал вдохновение из более ранней реализации в Interlisp . [1] Он быстро стал популярным, потому что сделал оболочку C быстрой и простой в использовании. С тех пор история стала стандартной функцией в других оболочках, включая ksh , Bash и cmd.exe от Microsoft . История рассмотрела два важных сценария:
В исходной оболочке C Joy пользователь мог обратиться к предыдущей команде, набрав восклицательный знак , !
за которым следовали дополнительные символы, чтобы указать конкретную команду, только определенные слова или каким-либо образом отредактировать ее перед вставкой обратно в командную строку. Например:
!!
имела в виду всю предыдущую команду.!$
означало только последнее слово предыдущей команды.!abc
имелась в виду команда, начинающаяся с abc .Обычной реализацией сегодня является объединение истории с редактированием из командной строки. Клавиши курсора используются для перемещения вверх и вниз по списку истории, а также влево или вправо в любое место строки, где пользователь может просто ввести желаемое изменение. Но некоторые реализации основаны на меню : пользователь нажимает определенную функциональную клавишу, которая отображает меню последних команд, из которых пользователь может выбрать одну, набрав число.
Некоторые реализации, такие как Bash, поддерживают запись истории команд в файл ( history
команда). [2] [3]