Терминал в Linux является более эффективным и быстрым инструментом, потому что вы можете напрямую обращаться к файлам с помощью нескольких команд, а также выборочно редактировать и изменять их с помощью регулярных выражений (regex). Вы также можете запустить несколько команд одновременно и перенаправить вывод в файл. Это экономит время и очень удобно, когда мы хотим редактировать много файлов одновременно.
Для начала рассмотрим как создавать, переименовывать, перемещать, копировать и удалять файлы/папки. Во-первых, давайте создадим пустой файл и каталог. Мы можем использовать touch
для создания пустого файла и mkdir
для создания каталога.
┌──(k1ber㉿kali)-[~]
└─$ touch test.txt
┌──(k1ber㉿kali)-[~]
└─$ mkdir testFolder
┌──(k1ber㉿kali)-[~]
└─$ ls
Desktop Documents Downloads testFolder test.txt
Мы можем захотеть иметь определенные каталоги в каталоге, и поочерёдное создание каждой папки может забрать много времени. Команда mkdir имеет параметр, помеченный -p для добавления родительских каталогов. Мы можем посмотреть на всю структуру после создания родительских каталогов с помощью tree
┌──(k1ber㉿kali)-[~]
└─$ mkdir -p Parent/test/folder
┌──(k1ber㉿kali)-[~]
└─$ tree .
.
├── Desktop
├── Documents
├── Downloads
├── Parent
│ └── test
│ └── folder
├── testFolder
└── test.txt
8 directories, 1 file
С помощью команды mv
мы можем перемещать, а также переименовывать файлы и каталоги. Синтаксис для этого выглядит следующим образом:
┌──(k1ber㉿kali)-[~]
└─$ mv <файл/папка> <переименованный файл/папка>
Переименуем test.txt
в info.txt
:
┌──(k1ber㉿kali)-[~]
└─$ mv test.txt info.txt
┌──(k1ber㉿kali)-[~]
└─$ ls
Desktop Documents Downloads info.txt Parent testFolder
Передвинем файл info.txt
в папку Parent
:
┌──(k1ber㉿kali)-[~]
└─$ mv info.txt Parent/
┌──(k1ber㉿kali)-[~]
└─$ tree .
.
├── Desktop
├── Documents
├── Downloads
├── Parent
│ ├── info.txt
│ └── test
│ └── folder
└── testFolder
8 directories, 1 file
Для копирования файлов/папок используется команда cp
. Если папка для копирования не пустая, используйте параметр -r
для рекурсивного копирования.
┌──(k1ber㉿kali)-[~]
└─$ cp -r Parent/ ParentTwo/
┌──(k1ber㉿kali)-[~]
└─$ tree .
.
├── Desktop
├── Documents
├── Downloads
├── Parent
│ ├── info.txt
│ └── test
│ └── folder
├── ParentTwo
│ ├── info.txt
│ └── test
│ └── folder
└── testFolder
11 directories, 2 files