Команда unix, чтобы увидеть последнюю команду запуска в командной строке

6638
Vijay

Что такое команда, чтобы увидеть ранее выполненную команду, которая была запущена в командной строке?

2

3 ответа на вопрос

12
tonio

используйте historyкоманду.

history -1будет отображаться только последняя команда. В противном случае historyбудут перечислены последние 16 команд (для простого ksh, но это может отличаться от других оболочек, совместимых с korn).

Вы также можете использовать fcвстроенную команду, если вы используете обычный ksh(параметры команды описаны на странице руководства ).

история перечисляет последние 500 команд для меня. (Но я на OS X.) Eric Wilson 14 лет назад 0
тогда вы, вероятно, используете `bash`, а не` ksh`. tonio 14 лет назад 0
Я провел тест на MacOSX 10.5.8: история `ksh` отображает только 16 записей, как говорит` man ksh` из osx (найдите «16» на странице man). История `bash` отображает весь` $ HISTFILE`. (для вас 500, так как вы, вероятно, установили для $ HISTFILESIZE значение 500. tonio 14 лет назад 0
А что касается команды истории bash: `alias h = 'history $ ((LINES - 1))'` хорошо для просмотра недавней истории без полного уничтожения прокрутки. 14 лет назад 1
0
Justin Ethier

Согласно этому сообщению, вы можете использовать клавишу « Стрелка вверх», добавив следующие строки в конец файла .kshrc в каталоге $ HOME:

set -o emacs alias __A=$(print '\0020') # ^P = up = previous command alias __B=$(print '\0016') # ^N = down = next command alias __C=$(print '\0006') # ^F = right = forward a character alias __D=$(print '\0002') # ^B = left = back a character alias __H=$(print '\0001') # ^A = home = beginning of line 
0
Peter Jaric

Это зависит от вашей оболочки. Если вы хотите выполнить последнюю команду, например, в bash, вы можете набрать !!.

Смотрите эту страницу для получения дополнительной информации.

РЕДАКТИРОВАТЬ

Ну что ж, теперь я заметил, что вы отметили свой пост ksh. Извини за это. Я все равно оставлю этот ответ здесь. Может быть, это кому-нибудь когда-нибудь поможет :)