Читайте также:
|
|
Регулярные файлы - это объекты файловой системы, которые содержат данные. Другими словами это обычные файлы с которыми вы привыкли имеет дело: текстовые файлы, музыкальные композиции, рисунки, видео-файлы - все это регулярные файлы. Просмотреть содержимое таких файлов можно командами cat, less. Создать файл можно несколькими способами.Первый способ - это с помощью команды touch. На самом деле основное назначение этой команды это изменять время доступа и изменения файла. Выполните команду ls -l в вашем домашнем каталоге. В шестом столбце указаны даты последнего изменения файлов. Выберите файл с датой отличной от текущей и выполните команду touch имя вашего файла (возможно нужно будет выполнить команду от пользователя root). Теперь снова ls -l и увидите, что дата изменилась на текущую. У команды touch есть небольшое “побочное” действие. Если ей в качестве параметра передать имя несуществующего файла, то она все равно выполнит, то что от нее просят (изменит время), а так как файла нет, то она его создаст. Выполните команду touch с именем несуществующего файла и по команде ls убедитесь, что он есть. Файл будет создан пустым. Редактировать такой файл можно любым текстовым редактором (vim, nano). Еще один способ это передать какой-либо текст в файл следующим образом echo Hello world! > test.txt. В результате выполнения этой команды будет создан файл с именем test.txt с содержимым Hello world! Таким образом в файл можно перенаправить результат выполнения любой команды. Например, команда ls > list.txt создаст файл list.txt в котором будет содержаться перечень содержания текущего каталога. Еще один способ - это при помощи любого текстового редактора.
Правила именования файлов. Первое, что необходимо четко уяснить и запомнить: Linux (в отличии от Windows) в именах файлов учитывает регистр букв. То есть Test, test, tEst, TEST - это все будут разные файлы. Вторая отличительная (от Windows) особенность, это расширение файла. В Linux его просто нет. Точка в имени файла это такой же символ как и другие. Создавая командой touch файлы с именами test.txt, test.doc или test.jpg мы все равно создадим текстовый файл. Расширения больше нужны для кроссплатформенных приложений, чтобы те находили “свои” файлы.
Очень важным является вопрос какие символы можно использовать для имен файлов, а какие нельзя. Этому вопросу можно было бы уделить пол-лекции, так как существует довольно много вариантов когда те или иные символы можно или нельзя использовать. Я предлагаю запомнить следующее: в именах файлов всегда можно использовать следующие символы: цифры, буквы (лучше латиницу), точка, знак подчеркивания. Набора этих символов вполне достаточно, чтобы называть ваши файлы. Поэтому я намеренно не буду указывать какие символы использовать нельзя. Просто помните какие можно и используйте их. Любопытные могут найти дополнительную информацию в Интернете. Длина имени файла 255 байт.
Для того чтобы переименовать или перенести файл существует команда mv (сокращенно от move). Вот несколько примеров использования этой команды:
mv test.txt text.tst - переименование файла test.txt в text.tst в текущем каталоге.
mv /home/igor/docs/test /home/igor/docs/text - переименование файла test в каталоге /home/igor/docs/
mv test1.txt./docs/ - перенести файл test1.txt в каталог /docs/
Для копирования файлов используется команда cp (сокращенно от copy). Форма ее схож с командой mv. Несколько примеров.
cp test./docs/ - копируем файл test в каталог ./docs
cp./docs/test1.txt. - копирование файла test1.txt в текущий каталог (обратите внимание на точку в конце команды).
Пришло время объяснить, что обозначает точка в приведенных примерах. Если вы для любого каталога выполните команду ls -a (ключ а позволяет отобразить скрытые файлы), то всегда вверху увидите два символа:. - точка и .. - две подряд идущие точки. Это тоже названия каталогов. Точка обозначает текущий каталог, а две точки обозначает родительский каталог. Вы можете выполнить команду ls.. и посмотреть список файлов родительского каталога для текущего. Для перемещения по каталогам используется команда cd. Набрав команду cd /boot/grub/ вы переместитесь в каталог grub, который находятся в каталоге boot. По команде cd.., вы перейдете родительский для каталог для текущего, то-есть в boot. Таким образом можно по команде cd.. перемещаться вверх по дереву файловой системы. Чтобы перейти в свой домашний каталог нужно набрать команду cd ~ (”тильда” - означает домашний каталог). Перейдите теперь в каталог /usr (cd /usr/). Выполните команду ls. В каталоге среди прочих присутствует каталог /bin. Как посмотреть его содержимое? Набрав, ls /bin - вы отобразите содержимое каталога /bin, который находится в корне операционной системы. Нужно либо указать полный путь: ls /usr/bin/ или написать следующим образом ls./bin/. Если бы не было этих спец-имен, то команду cp./docs/test1.txt. пришлось бы писать следующим образом: cp /home/igor/docs/test1.txt /home/igor/.
Удаление файлов. Здесь нужно быть предельно внимательным и приучить себя к мысли, что никаких “корзин” в Linux нет и удаляя файл, вы удаляете его навсегда. Поэтому прежде чем, что-то удалять подумайте не один, а два раза, а то и три. Для удаления файлов существует команда rm. Команда универсальная в том смысле, что позволяет удалять все типы файлов. Формат простой: rm [ключи] имя файла. Самый важный ключ этой команды это -i. С этим ключом команда спросит вас действительно ли вы хотите выполнить удаление. Без этого ключа команда удалит файл без вопросов. Создайте несколько файлов и попробуйте их удалить с ключом i и без него. Если в вашем дистрибутиве команда rm без ключей выдает запрос, значит используется механизм алиасов. Если вы не хотите получать запрос на удаление, то команду rm необходимо выполнить с ключом -f. Но об этом позже. Чтобы удалить директорию необходимо команду rm использовать с ключом -r. Также для удаления директории существует команда rmdir.
Теперь давайте рассмотрим как операции удаления, копирования и перемещения можно выполнять для группы файлов. Для этого необходимо использовать символы групповых операций. Создайте у себя в домашнем каталоге, подкаталог temp (cd ~; mkdir temp), перейдите в него (cd ~/temp/) и создайте несколько файлов: touch file1.txt file2.txt file3.txt; touch file1.jpg file2.jpg file3.jpg; touch abcd asdf azxs adcd.
Теперь подробнее о символах групповых операций. Символ * - обозначает любое количество любых символов. Для проверки будем использовать команду ls с соответствующими символами.
ls *.jpg - в результате будут отображены все файлы которые заканчиваются на .jpg. Результат: file1.jpg file2.jpg file3.jpg.
ls file* - будут отображены все файлы, которые начинаются на file. Результат: file1.jpg file1.txt file2.jpg file2.txt file3.jpg file3.txt.
Символ? - заменяет любой один символ.
ls a?cd - результатом будут все файлы состоящие из 4-х символов, первый - a, третий, четвертый - cd, а второй может быть любым. Результат: abcd adcd.
[] - в квадратных скобках можно задавать определенные символы или диапазон символов.
ls [abcd][abcd]* - результатом будут все файлы первый и второй символ которых a, b, c или d. Результат: abcd adcd.
ls *[23]* - результатом будут все файлы в которых есть цифра 2 или 3. Результат: file2.jpg file2.txt file3.jpg file3.txt.
ls file[1-3]* - результатом будут все файлы начинающиеся на file у которых далее идет цифра из диапазона 1-3. Результат: file1.jpg file1.txt file2.jpg file2.txt file3.jpg file3.txt.
Я не случайно показал работу с символами групповых операций на примере команды ls. Рекомендую на начальном этапе изучения Linux при использовании групповых операций (или шаблонов) для команды rm использовать команду ls для проверки того, что вы будете удалять. Создайте в нашем каталоге ./temp/ еще несколько файлов touch file1txt file2txt file3txt file4txt file5txt. Теперь допустим вы хотите удалить созданные только, что файлы. Для этого можно воспользоваться командой rm file[1-5]*txt. Но эта команда удалит не только файлы file1txt file2txt file3txt file4txt file5txt, но и файлы file1.txt file2.txt file3.txt! А это нам совсем не нужно. Выполнив команду ls file[1-5]*txt вы увидите, что данный шаблон затрагивает и нужные файлы. И команду нужно выполнить как rm file[1-5]txt. Не ленитесь проверять ваши шаблоны, пока не будете чувствовать себя уверенно в их написании.
Линки (links)
Линки - это также особый тип файлов в Linux как каталоги или файлы-устройства. Есть два типа линков: симолические линки (symbolic link) и жесткие линки (hard link). Символический линк - это файл внутри которого содержится путь к объекту файловой системы. Создается символический линк при помощи команды ln с ключом -s.
Дата добавления: 2014-12-19; просмотров: 106 | Поможем написать вашу работу | Нарушение авторских прав |