bash basics


1. cd

$ cd </path/to/directory>

Сокращенное change directory. Позволяет перемещаться по файловой системе.

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

  • cd без параметров перемещает в домашнюю директорию пользователя.
  • cd - перемещает по прошлому пути.
  • . (точка) текущая директория
  • .. (две точки) родительская директория
  • ~ (тильда) домашняя директория пользователя

2. pwd

$ pwd

Сокращение от print work directory. Выводит текущий абсолютный путь.

3. ls

$ ls </path/to/directory>

Сокращение от list. Отображает все файлы и директории в директории /path/to/directory.

  • ls без параметров отображает все файлы и директории по текущему пути
  • ls -a отображает скрытые файлы и папки
  • ls -l отображает расширенную информацию о файлах и папках

4. cat

$ cat <file_name>

Отображает содержимое файла file_name.

5. less

$ less <file_name>

Отображает содержимое файла file_name, выводит только содержимое помещающееся в окно терминала. Навигация по файлу возможна клавишами-стрелками, кнопка "q" закрывает просмотр.

6. file

$ file <file_name>

Выводит на экран тип файла. Настоящий тип, а не указанный в расширении.

7. cp

$ cp <file1> <file2>

Сокращение от copy. Копирует файл file1 по пути file2.

8. mv

$ mv <file1> <file2>

Сокращение от move.

Перемещает файл file1 по пути file2.

9. rm

$ rm <file1>

Сокращение от remove.

Удаляет файл file1.

  • rm -r удаляет директорию

10. mkdir

$ mkdir <directory>

Сокращение от make directory.

Создает директории с именем directory.

11. locate

$ locate <file>

Возвращает все пути с вхождениями file в них.

12. man

$ man <cmd>

Отображает справку по команде cmd.

13. echo

$ echo <string>

Выводит заданную строку string на экран.

14. strings

$ strings <file1>

Выводит все строки с печатными символами из файла file1 на экран.

Перенаправление вывода

Bash позволяет перенаправлять стандартный вывод в файлы с помощью оператора >. Если файл не существовал, он будет создан, иначе он будет перезаписан.

$ echo hello! > 1.txt
$ ls 
1.txt
$ cat 1.txt
hello!

Если требуется дописать строку в файл используется оператор >>.

Конвейер

Если нужно перенаправить вывод одной команды на вход другой используется оператор |.

$ locate bin | less

results matching ""

    No results matching ""