История

5.3.3 История команд

Когда команда выполняется в терминале, она сохраняется в списке истории. Это сделано для того, чтобы упростить выполнение одной и той же команды, а затем устранить необходимость повторного ввода всей команды.

Нажатие клавиши со стрелкой вверх ↑ отображает предыдущую команду в строке подсказки. Всю историю команд, запущенных в текущем сеансе, можно отобразить, несколько раз нажав кнопку « Вверх» , чтобы вернуться назад по истории команд, которые были выполнены. Нажатие клавиши Enter снова запускает отображаемую команду.

Когда нужная команда найдена, клавиши со стрелкой влево ← и со стрелкой вправо → могут позиционировать курсор для редактирования. Другие полезные клавиши для редактирования включают клавиши Home , End , Backspace и Delete .

Чтобы просмотреть список истории терминала, используйте historyкоманду:

sysadmin@localhost:~$ date                                       
Wed Dec 12 04:28:12 UTC 2018                                   
sysadmin@localhost:~$ ls                                           
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos       
sysadmin@localhost:~$ cal 5 2030                                  
     May 2030                                                                  
Su Mo Tu We Th Fr Sa                                                            
          1  2  3  4                                                            
 5  6  7  8  9 10 11                                                            
12 13 14 15 16 17 18                                                            
19 20 21 22 23 24 25                                                            
26 27 28 29 30 31                                                               
sysadmin@localhost:~$ history                                   
    1  date                                                       
    2  ls                                                      
    3  cal 5 2030                                             
    4  history                                                 

Если нужная команда есть в списке, который historyгенерирует команда, ее можно выполнить, введя !символ восклицательного знака, а затем число рядом с командой, например, чтобы выполнить команду calеще раз:

sysadmin@localhost:~$ history                                     
    1  date                                                      
    2  ls                                                         
    3  cal 5 2030                                                 
    4  history                                                    
sysadmin@localhost:~$ !3                                        
cal 5 2030                                                        
     May 2030                                                                  
Su Mo Tu We Th Fr Sa                                                            
          1  2  3  4                                                            
 5  6  7  8  9 10 11                                                            
12 13 14 15 16 17 18                                                            
19 20 21 22 23 24 25                                                            

Если historyкоманде передается число в качестве аргумента, она выводит это количество предыдущих команд из списка истории. Например, чтобы показать последние три команды:

sysadmin@localhost:~$ history 3
    6  date                                                                     
    7  ls /home                                                                   
    8  history 3

‌⁠​​⁠​Чтобы выполнить n-ю команду снизу списка истории, введите и нажмите!-nВходить. Например, чтобы выполнить третью команду снизу списка истории, выполните следующее:

sysadmin@localhost:~$ !-3                                                       
date                                                                            
Wed Dec 12 04:31:55 UTC 2018 

Чтобы выполнить самый последний тип команды !!и нажмите Enter :

sysadmin@localhost:~$ date                                                      
Wed Dec 12 04:32:36 UTC 2018                                                    
sysadmin@localhost:~$ !!                                                        
date
Wed Dec 12 04:32:38 UTC 2018

Чтобы выполнить самую последнюю итерацию определенной команды, введите !имя команды и нажмите Enter . Например, чтобы выполнить самую последнюю lsкоманду:

sysadmin@localhost:~$ !ls                                                       
ls /home                                                                        
sysadmin 

Last updated