48 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Markdown
		
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Markdown
		
	
	
| ---
 | ||
| title: bg & less
 | ||
| description: 
 | ||
| published: true
 | ||
| date: 2023-11-15T18:09:58.490Z
 | ||
| tags: 
 | ||
| editor: markdown
 | ||
| dateCreated: 2023-11-15T18:09:58.490Z
 | ||
| ---
 | ||
| 
 | ||
| Любой администратор Linux так или иначе использует встроенную утилиту man для просмотра справочной информации по программам. Каждая подобная справка является отдельным документом, который пишут разработчики программного обеспечения.
 | ||
| 
 | ||
| Man использует утилиту less для постраничного вывода текстовой информации. Соответственно, чтобы использовать возможности по удобному перемещению и поиску по тексту в man, стоит изучить возможности less.
 | ||
| 
 | ||
| Например, для начала поиска по man достаточно ввести символ / и далее строку поиска. После нажатия Enter начнётся поиск вперёд по тексту. Для поиска назад, нужно использовать не слеш, а символ ?.
 | ||
| 
 | ||
| Теперь немного магии. Допустим, вам надо найти в man описание ключа -L. Для этого вводим в поиск:
 | ||
| ```
 | ||
| /^\s+-L
 | ||
| / - поиск вперёд
 | ||
| ^ - начало строки
 | ||
| \s - пробельный символ
 | ||
| + - повторитель, указывает, что предыдущий символ должен повторяться один или несколько раз
 | ||
| -L - то, что мы ищем.
 | ||
| ```
 | ||
| То есть будет найдена строка, которая начинается с пробелов, а далее идут символы -L. Типовая разметка для описания ключей в man.
 | ||
| 
 | ||
| Ориентироваться в результатах поиска можно следующим образом:
 | ||
| - перейти к следующему совпадению клавиша (n);
 | ||
| - перейти к предыдущему совпадению клавиша (N);
 | ||
| - перейти в начало страницы клавиша (g);
 | ||
| - перейти в конец страницы клавиша (G).
 | ||
| 
 | ||
| Также less хранит историю поиска. Вводите / и листаете клавишами вверх, вниз. Таким образом можно выбрать предыдущий шаблон поиска. Более подробно man less, man man. Как там искать вы уже знаете 😁
 | ||
| 
 | ||
| В конце страниц для утилит командной строки, обычно есть коды возврата и прочая полезная информация. Кстати утилиты systemd по умолчанию тоже используют less. Так что всё написанное выше актуально и для поиска в systemd.
 | ||
| 
 | ||
| И ещё одна маленькая и полезная фишка, которая сохранит вам много времени и нервов. Когда что-то ищешь в man, потом хочешь проверить это в терминале, по ошибке выходишь из справки и потом приходится опять искать то, что было найдено. Но man не обязательно закрывать. Его можно свернуть комбинацией клавиш CTRL+Z. Приложение уйдёт в фоновый режим. Посмотреть, что работает в фоне, можно введя в консоли:
 | ||
| ```
 | ||
| # bg
 | ||
| [1]+ man ls &
 | ||
| [1]+ Stopped man ls
 | ||
| ```
 | ||
| Теперь возвращаем из фона процесс с man:
 | ||
| ```
 | ||
| # fg man
 | ||
| ```
 | ||
| И продолжаем читать там, где остановились. Подобные трюки можно делать с любыми процессами, запущенными в консоли. |