Мы перевели статью, в которой делимся лайфхаками по использованию Linux-команд.

Эти лайфхаки — не только для новичков. Вполне возможно, что даже продвинутые пользователи Linux найдут какие-то полезные для себя вещи.

Использовать tab для автозаполнения

Когда вы начинаете что-то печатать в терминале Linux, нажмите на клавишу tab, чтобы увидеть все опции.

Например, если вы хотите скопировать файл под названием my_best_file_1.txt, наберите ‘cp m’ и нажмите tab, чтобы увидеть возможные опции:

Использование tab в консоли при SSH-подключении

Переключиться в последнюю используемую директорию

Например, вы оказались в длинной директории, и перешли в другую директорию в другом пути. Вам нужно вернуться в предыдущую директорию. Для этого нужно напечатать команду:

cd -

Это вернет вас в последнюю использованную директорию. Не нужно печатать длинный путь или копировать-вставлять его.

Переход в предыдущую директорию при работе в консоли

Вернуться в домашнюю директорию

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

cd ~ 

или

cd

У большинства Linux-дистрибутивов эта команда настроена по умолчанию:

Возврат в домашнюю директорию при работе в командной строке

Выводить содержимое директории

Для этого можно использовать команду:

l 

или

ll

Опять же, зависит от дистрибутивов Linux и настройки оболочки ОС. Но, как правило, вы можете использовать одну из команд:

Вывод содержимого директории в Linux

Запускать несколько команд одной командой

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

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

command_1; command_2; command_3

Запускать несколько команд одной командой, если предыдущая была успешной

Например, вам нужно построить код, и если билд был успешным, запустить изменения.

Для этого вы можете использовать разделитель &&.

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

command_1 && command_2

Находить и использовать команды, которые вы использовали раньше

Например, несколько минут или часов назад вы использовали длинную команду. Теперь она понадобилась вам снова. Проблема в том, что вы не можете вспомнить точную команду.

Нажмите ctrl+r, чтобы начать обратный поиск и введите часть команды. Система посмотрит историю и покажет команды, которые подходят к вашему поисковому термину:

ctrl+r search_term

По умолчанию система покажет только один результат. Чтобы увидеть больше результатов, нажимайте на ctrl+r снова и снова — вас будет возвращать на шаг назад.

Чтобы выйти из обратного поиска, нажмите Ctrl+C.

Реверсивный поиск при работе в консоли

В некоторых оболочках Bash вы также можете использовать кнопки Page Up и Down для поиска команд.

Разморозить терминал Linux после случайного нажатия Ctrl+S

Вы, наверное, привыкли использовать Ctrl+S, чтобы сохранить что-то. Но если вы используете эту команду в терминале Linux, он заморозится.

Не волнуйтесь — не нужно закрывать терминал, чтобы разморозить его. Вместо этого нажмите Ctrl+Q — и терминал снова заработает.

Перейти в начало или конец строки

Например, вы набираете длинную команду, и на полпути понимаете, что вам нужно поменять что-то в начале строки.

Чтобы быстрее исправить команду:

    • нажмите Ctrl+A, чтобы перейти в начало строки,
    • Ctrl+E, чтобы перейти в конец строки.
Перемещение в начало и конец строки при работе в терминале

Читать нераспакованные логи

Логи сервера — это gzip файлы. Как правило, их сжимают, чтобы они не занимали много места. Чтобы проанализировать логи, их обычно нужно распаковать. Но для этого нужны права редактирования, которые не всегда есть.

Используя команды z, вам необязательно распаковывать сжатые файлы. Вы можете использовать команды zless, zcat, zgrep. Читайте подробную инструкцию о том, как использовать z команды для сжатых логов.

Использовать команду less, чтобы читать файлы

Чтобы просмотреть содержание файла, cat-команда — не лучший вариант, особенно если файл большой. Команда cat отобразит весь файл на экране.

Вместо этого используйте:

less path_to_file

Заново использовать последний элемент из предыдущей команды с помощью !$

Например, вам нужно создать директорию и зайти в нее. Вы можете использовать:

!$
Использование последнего элемента из предыдущей команды в Linux

Заново использовать предыдущую команду в настоящей команде с помощью !!

Вы можете вызвать предыдущую команду, используя !!. Это полезно, когда нужно запустить команду, и вы понимаете, что нужны права администратора:

!!
Использование предыдущей команды в настоящей команде в Linux

Использовать alias, чтобы исправлять опечатки

Например, вы случайно написали gerp вместо grep. Введите в терминал команду:

alias gerp=grep

Так вам не придется перепечатывать команду.

Копировать-вставить в терминале Linux

Эта команда зависит от дистрибутива и приложения для терминала. Но как правило, копировать-вставить работает с помощью таких сочетаний:

  • Выделите текст для копирования и нажмите правой клавишей мыши для вставки.
  • Выделите текст для копирования и нажмите на среднюю клавишу мыши для вставки.
  • Ctrl+Shift+C для копирования и Ctrl+Shift+V для вставки.

Убить запущенную команду или процесс

Если в фоне запущена команда, и вы хотите из нее выйти, используйте команду:

Ctrl+C

Использовать команду yes для команд или скриптов, которым нужен интерактивный ответ

Если есть команды или скрипты, которым нужно взаимодействие с пользователем, и вам нужно каждый раз вводить Y, вы можете использовать команду Yes:

yes | command_or_script

Удалить содержимое файла, не удаляя файл

Используйте следующую команду:

> filename

Найти файлы с определенным текстом

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

grep -Pri Search_Term path_to_directory

Использовать help с любой командой

Почти все инструменты командной строки содержат страницу помощи, которая показывает, как использовать команды. Чтобы использовать опцию help, введите:

command_tool --help

Поделитесь с нами в комментариях, какими командами Linux вы пользуетесь, чтобы сэкономить время.

Источник: статья на ресурсе ItFoss.