Добрый день дорогие друзья.
В предыдущей статье мы с вами научились перемещаться по файловой системе Linux, а также получать информацию о файлах и каталогах. В этой статье мы с вами ознакомимся с командами которые позволят вам копировать, перемещать, создавать, удалять файлы и директории.
В данной статье мы будем рассматривать команды touch, rm, cp, mv, mkdir, rmdir.
touch - создание файла rm - удаление файла cp - копирование mv - перемещение mkdir - создание папки rmdir - удаление папки
touch
touch — утилита для установки времени доступа/изменения файлов. Основное назначение утилиты, это как вы поняли, установить дату и время последнего изменения файла или доступа к нему.
Однако этой утилитой очень часто пользуются при создании файлов. Дело в том, что если утилите передать в аргументе имя файла который не существует, то программа автоматически его создаст и установит время изменения и доступа.
-t — при помощи этого ключа мы можем установить время в формате который соответствует шаблону [[СС]YY]MMDDhhmm[.SS].
- СС — первые 2 цифры года(век)
- YY — последние 2 цифры года
- MM — месяц
- DD — день
- hh — часы
- mm — минуты
- SS — секунды
Пример: touch -t 201202270446.26 file.txt
Для файла file.txt будет установлена дата 27 Февраля 2012 года 4:46:26.
Есть и другие ключи для этой утилиты, мы их пока разбирать не будем, так как чаще всего эта утилита используется для создания пустых файлов.
rm
rm является утилитой для удаления файлов и каталогов. Основное назначение — это удалять файлы, однако при помощи ключа -R можно удалить и каталог. Данный ключ применяется для того, чтоб удалить каталог в котором уже есть файлы, для удаления пустых каталогов можно использовать команду rmdir.
-f - игнорирует все ошибки и выполняет удаление, при этом не выдавая в консоль никакой информации. -i - выдает предупреждение при удалении файла. Нужно подтвердить или отменить удаление. -v - выводит информацию о выполненных действиях.
Команда в качестве аргумента(имени файла, который нужно удалить) может принимать специальные символы(групповые операции), об этом мы поговорим позже, а сейчас просто посмотрим пару примеров.
rm *.txt — удалит все файлы с расширением txt в каталоге
rm foo* — удалит все файлы, имя которых начинается на foo
cp
cp — утилита для копирования файлов и каталогов. В качестве аргументов принимает ключи(опции), путь к источнику, путь назначения.
cp [OPTIONS] SOURCE DESTINATION
cp -v /var/log/messages /home/user/messages
Сама команда очень гибкая, имеет множество ключей, однако на практике используются они не часто. Наиболее часто используются ключи -f,-v,-i,-r(-R). Функции которых аналогичны команде rm.
Если в директории куда планируется скопировать файл уже есть файл с таким именем, то он будет перезаписан. Во избежание таких ситуаций желательно использовать ключ -i. Также как и команда rm, cp может принимать специальные символы, для копирования сразу нескольких файлов и директорий.
mv
Применяется данная утилита для перемещения и переименования файлов. Имеет синтаксис такой же как и у cp, а также ключи выполняют функции как и у cp.
Соответственно мы получаем синтаксис команды:
mv [OPTIONS] SOURCE DESTINATION
mv -v /var/log/messages /home/user/messages
Таким образом файл источник будет создан в месте назначения с новым именем. Можно использовать специальные символы, для перемещения или переименования сразу нескольких файлов.
mkdir
Утилита mkdir используется для создания пустых каталогов. Также можно создавать и подкаталоги, иногда довольно удобно. Синтаксис довольно простой: mkdir [OPTION] DIRECTORY. В качестве опций(ключей) принимает всего 3 ключа:
-m - задает права доступа к директории. Права нужно указывать при помощи маски umask. -p - позволяет создавать подкаталоги. -v - выводит информацию о проделанных действиях.
Использование ключа -p довольно простое, нам всего лишь нужно через слэш указать название подкаталогов, таким образом синтаксис будет иметь следующий вид:
mkdir -p test/test1/test2/test3
После выполнения команды будет создан каталог test в котором будет создан подкаталог test1 и так далее.
rmdir
Утилита для удаления каталогов. Удаляет только пустые каталоги. Также имеет в арсенале ключ -p, для удаления подкаталогов. Подкаталоги соответственно должны быть пустыми.
Потренируйтесь работать с данными командами для закрепления материала. Так как эти команды вы будете использовать наиболее часто, вам нужно довести использование этих команд до автоматизма.