Linux. Основы командной строки. Часть 3-ая.
Командная оболочка поддерживает специальные символы, помогающие быстро определять группы имен файлов. Их так же называют групповыми символами (wildcards).
Групповые символы позволяют выбирать имена файлов по шаблону.
Групповые символы и их соответствие:
Любая последовательность любых символов:
*
?
Любой один символ из указанных множества символов:
[символы]
Любой один символ, не принадлежащий указанному множеству символов:
[!символы]
Любой один символ, принадлежащий указанному классу:
[[:класс:]]
Часто используемые классы символов:
Любой алфавитно-цифровой символ:
[:alnum:]
[:alpha:]
[:digit:]
Любая буква в нижнем регистре:
[:lower:]
Любая буква в верхнем регистре:
[:upper:]
Примеры использования групповых символов:
*
Все имена файлов, начинающиеся с символа 'g':
g*
Все имена файлов, начинающиеся с символа 'b', за которым следует любое число других символов, и заканчивающиеся на '.txt':
b*.txt
Все имена файлов, начинающиеся с символов 'Data' за которыми следуют ровно 3 любых символа:
Data???
Все имена файлов, начинающиеся с символа 'a', 'b' или 'c':
[a,b,c]*
Все имена файлов, начинающиеся с символов 'BACKUP', за которыми следуют ровно 3 цифровых символа:
BACKUP. [0-9][0-9][0-9]
Все имена файлов, начинающиеся с буквы в верхнем регистре:
[[:upper:]]*
Все имена файлов, не начинающиеся с цифры:
[![:digit:]]*
Все имена файлов, заканчивающиеся буквой в нижнем регистре или цифрой '1', '2' или '3':
*[[:lower:]123]
mkdir (make directory) - создание каталогов.
Команда mkdir используется для создания каталогов. Вызывается она следующим образом (точки обозначают что каталогов может быть несколько):
mkdir [каталог]...
Создание 3-ех каталогов с именами dir1, dir2, dir3:
mkdir dir1 dir2 dir3
cp (copy) - копирование файлов и каталогов.
Команда cp копирует файлы и каталоги. Её можно использовать 2-мя разными способами.
cp item1 item2
cp [элемент]... [каталог]
mv (move) - перемещение и переименование файлов.
Команда mv выполняет операции перемещение и переименования файлов. В любом случае исходный файл исчезает после операции.
Перемещает или переименовывает файл, или каталог item1 в item2:
mv item1 item2
Перемещает один или более элементов из одного каталога в другой:
mv [элемент]... [каталог]
rm (remove) - удаление файлов и каталогов.
Команда rm используется для удаления файлов и каталогов.
Используется следующим образом (где элемент - один или несколько файлов/каталогов):
rm [элемент]...
Параметры команд и примеры их использования.
Наиболее часто используемые параметры с командой cp:
Скопировать файлы и каталоги со всеми атрибутами, включая идентификаторы владельцев и права доступа. Без этого параметра копии обычно получают значения атрибутов по умолчанию, определенных для пользователя, выполняющего копирования:
-a, --archive
Запрашивать у пользователя подтверждение перед перезаписью существующего файла:
-i, --interactive
Рекурсивно копировать каталоги и их содержимое. Это обязательный параметр при копировании каталогов:
-r, --recursive
При копировании файлов из одного каталога в другой, копировать только файлы, отсутствующие в каталоге назначения или более новые. Этот параметр удобно применять при копировании большого количества файлов, так как он позволяет пропустить файлы, которые не требуется копировать:
-u, --update
Выводить информационные сообщения в процессе копирования:
--v, --verbose
Примеры использования команды cp:
Скопировать file1 в file2. Если file2 существует, то он будет затерт новым файлом file1. Если file2 отсутствует, он будет создан:
cp file1 file2
То же, что и выше, но если file2 существует, будет предупреждение перед перезаписью файла:
cp -i file1 file2
Скопировать file1, file2 в каталог dir1. Каталог dir1 должен существовать:
cp file1 file2 dir1
С использованием группового символа. Скопировать все файлы из каталога dir1 в каталог dir2. Каталог dir2 должен существовать:
cp dir1/* dir2
Скопировать содержимое каталога dir1 в каталог dir2. Если каталог dir2 не существует, он будет создан и заполнен содержимым каталога dir1. Если каталог dir2 существует, тогда в него будет скопирован сам каталог dir1 (вместе с его содержимым):
cp -r dir1 dir2
Наиболее часто используемые параметры с командой mv:
Запрашивать у пользователя подтверждение перед перезаписью существующего файла:
-i, --interactive
При перемещении файлов из одного каталога в другой перемещать только файлы, отсутствующие в каталоге назначения или более новые:
-u, --update
Выводить информационные сообщения в процессе перемещения:
-v, --verbose
Примеры использования команды mv:
Переместит file1 в file2. Если file2 существует, он будет заменен на новый файл file1. Если отсутствует, он будет создан. В любом случае file1 исчезнет:
mv file1 file2
То же, что и выше, но если file2 существует, у пользователя, будет запрошено подтверждение, перед перезаписью файла:
mv -i file1 file2
Переместит file1 и file2 в каталог dir1 (каталог должен существовать):
mv file1 file2 dir1
Если каталог dir2 отсутствует, команда mv создаст его и переместит содержимое каталога dir1 в каталог dir2, после чего удалит dir1. Если каталог dir2 существует, команда переместит каталог dir1 (вместе с содержимым) в каталог dir2:
mv dir1 dir2
Наиболее часто используемые параметры с командой rm:
Запрашивать у пользователя подтверждение перед удалением существующего файла:
-i, --interactive
Рекурсивно удалить каталоги. То есть вместе с каталогом будут удалены все его подкаталоги (обязательный параметр при удалении каталогов):
-r, --recursive
Игнорировать отсутствующие файлы и не запрашивать подтверждения. Отменяет действие параметра --interactive:
-f, --force
Выводить информационные сообщения в процессе удаления:
-v, --verbose
Примеры использования команды rm:
rm file1
Запросить подтверждение перед удалением:
rm -i file1
Удалить файл file1 и каталог dir1 со всем его содержимым:
rm -r file1 dir1
То же, что и выше, но в отсутствие файла/каталога продолжит работу, не выводя сообщений:
rm -rf file1 dir1
telegram — https://t.me/tenlapa