Смекни!
smekni.com

Оперциаонные системы ASP Linux и Windows (стр. 7 из 15)

touch [-k] имя-файла - замена времени модификации на текущее, если файл не существует, то создается новый пустой файл. Команда может использоваться для создания новых пустых файлов, если указать имя несуществующего файла.

wc [-lwc] список_файлов - подсчет количества строк (-l), слов (-w), или символов (-c) в указанных файлах.

cp [-k] вх_файл_1 [вх_файл_2 [... вх_файл_n]] вых_файл – копирование файлов.

В самом формате команды заложено два режима ее использования:

1-й: Если вых_файл - обычный файл, то вх_файл может быть только один; в этом случае содержимое вх_файла копируется в вых_файл. Если вых_файл существовал, то его содержимое полностью заменяется на новое, атрибуты защиты сохраняются. Если создается новый вых_файл, то ему присваиваются атрибуты копируемого.

2-й: Если вых_файл - каталог, то в него последовательно копируются все указанные вх_файлы со своими атрибутами и именами, но каталог при этом автоматически не создается.

Примеры использования команды cp:

Создается новый файл FIL.c в том же текущем головном каталоге. Для копирования в другой каталог необходимо указать маршрутное имя выходного файла:

cd

cp fil.c FIL.c

Входной файл fil.c сохраняется в исходном текущем каталоге:

mkdir petr

mkdir lev1

cp fil.c lev1/prog.c

Групповые операции над файлами при копировании:

cp f.? fildir

cp f.[1-3] fildir

cp f.[123] fildir

mv [-k] вх_ф йл_1 [вх_ф йл_2 [... вх_ф йл_n]] вых_файл - перемещение или переименование файлов

Отличия от предыдущей команды копирования заключаются в том, что перемещаемые файлы в исходном каталоге уничтожаются.

Генерация имен файлов и каталогов (Pathname Expansion)

Подстановки имен путей и файлов (Pathname expansion) используются для того, чтобы с помощью краткого образца или шаблона указать несколько имен файлов (или каталогов), соответствующих данному шаблону.

Специальные символы шаблонов имеют следующее значение.

Таблица 2.1.4. Символы шаблонов

Символ Правила замены
* Соответствует произвольной строке символов, включая пустую строку. Например, my*.txt будет заменено на myday.txt, myweek.txt и mymonth.txt (если такие файлы существуют), а *.jpg соответствует всем файлам с расширением jpg в указанном каталоге
? Соответствует любому одиночному символу. Например, вместо шаблона file?.txt будут подставлены имена file1.txt и filex.txt, но не file10.txt
[...] Соответствует любому символу из числа символов, указанных в скобках. Пары символов, разделенные знаком минуса, обозначают интервал; любой символ стоящий лексически между этими двумя символами, включая и символы, задающие интервал, соответствует шаблону. Если первым символом внутри скобок является ! или ^, то считается, что шаблону (в данной позиции) соответствуют все символы, не указанные в скобках

Шаблоны имен файлов очень часто применяются в командных строках, содержащих команду ls. Представьте себе, что вы хотите просмотреть информацию о содержимом каталога, в котором находится огромное количество разных файлов различных форматов, например, файлов с изображениями форматов gif, jpeg, avi и т. д.. Чтобы получить только список файлов формата jpeg, вы можете использовать команду

[user]$ ls *.jpg

Если в каталоге имеется множество файлов, имена которых представлены четырехзначными номерами, то следующей командой можно вывести только список файлов с номерами от 0200 до 0499:

[user]$ ls -l 0[2-4]??.*

Практическая работа №3(1). Команды управления фалами

Цель работы:

1. Изучить основные команды работы с файлами ОС Linux

2. Научиться создавать, объединять, удалять, переименовывать файлы.

Порядок выполнения работы

Изучаются команды:

cat - слияние и вывод файлов на стандартное устройство вывода(конкатенация файлов);

rm - удаление файла;

mv - переименование файла;

сp - копирование файлов;

wc - подсчет количества строк и слов в файле.

1) Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

2) Изучите команды работы с файлами, для этого выведите на экран Терминала справку по следующим командам: cat, rm, mv, cp, wc. Назначение и формат команд приведите в отчете.

3) Перейдите в Ваш личный каталог и выведете на экран его содержимое.

4) Создайте 3-4 текстовых файла с частично совпадающими именами. Проанализируйте значения атрибутов Ваших файлов.

5) Создайте еще один файл методом слияния из существующих. Как изменились атрибуты нового файла?

6) Создайте два новых параллельных подкаталога.

7) В один подкаталог скопируйте имеющиеся файлы HOME-каталога с изменением имен, а в другой – переместите. Проанализируйте как изменилось содержание всех трех каталогов и каковы атрибуты всех полученных файлов.

8) Удалите созданные текстовые файлы и каталоги. Выйдите из программы Терминал.

Практическая работа №3(2) Использование шаблонов в именовании файлов

Цель работы:

1. Изучить понятие шаблона, способы задания шаблонов файлов

2. Научиться осуществлять просмотр директорий, копирование, удаление, и поиск файлов, используя шаблоны файлов.

Порядок выполнения работы

1) Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

2) Осуществите поиск всех файлов в домашнем каталоге, которые имеют расширение txt.

3) Осуществите поиск директорий, в составе имени которых, имеется любой однозначное число.

4) Осуществите в корневом каталоге поиск всех файлов, содержащих в составе имени слово linux.

5) Создайте в Вашем личном каталоге структуру каталогов, содержащих совпадающие имена.

6) Просмотрите содержимое файлов домашнего каталога с частично совпадающими именами с использованием механизма генерации имен файлов.

7) Просмотрите содержимое файлов каталога /dev с частично совпадающими именами с использованием механизма генерации имен файлов.

8) С использованием механизма генерации имен файлов слейте содержимое всех файлов в один и поместите его в HOME-каталог. Проанализируйте содержание файла.

9) С использованием механизма генерации имен файлов слейте содержимое всех файлов в один и поместите его в HOME-каталог. Проанализируйте содержание файла.

10) С использованием механизма генерации имен скопируйте из Вашего личного каталога все файлы с частично совпадающими именами в домашний каталог.

11) С использованием механизма генерации имен удалите в Вашем личном каталоге все файлы с частично совпадающими именами.

12) С использованием механизма генерации имен удалите в Вашем личном каталоге все каталоги с частично совпадающими именами.

13) Удалите из домашнего каталога скопированные ранее файлы и завершите работу с программой Терминал.

2.1.7. Команды работы с файлами: ссылки, сортировка файлов

ln [-ключ] вх_файл_1 [вх_файл_2 [... вх_файл_n]] вых_файл - организация новых ссылок на файл.

В формате команды заложено 2 режима ее использования:

1-й: Если вых_файл - обычный файл, то допускается только один вх_файл_1; в этом случае на н равным именам: вх_файл_1 и вых_файл.

Количество ссылок на файл в его описателе увеличивается на 1.

2-й: Если вых_файл - каталог, то в нем создаются элементы, включающие имена перечисленных в команде входных файлов и ссылки на них, после чего в каталоге вых_файл можно работать с этими файлами, как с файлами этого каталога.

Возможно создание символьных и жестких ссылок.

При создании жесткой ссылки ключ в команде не указывается. Символьная ссылка создается командой ln с ключом s. Символьная ссылка ссылается на полное имя файла, жесткая – на его инод (числовой номер, присеваемый файлу при его создании).

Обобщение свойств команды ln при создании жесткой ссылки:

- каждая ссылка на входной файл добавляет +1 к числу ссылок входного файла, после чего к упомянутому файлу можно обращаться по двум именам;

- все связанные файлы имеют совпадающие описатели в каталогах;

- если изменяется содержимое одного из связанных файлов, то меняется содержимое всех связанных файлов, т.к. связанные файлы разделяют одни и те же данные на диске;

- если удалить один из связанных файлов, то сокращается число взаимных ссылок на -1.

ls [-alrstu] [namedir] - вывод содержимого каталога; если в качестве namedir указано имя файла, то выдается вся информация об этом файле. Если аргумент не указан, выдается содержимое текущего каталога.

Значения некоторых аргументов:

- t - сортировка по времени модификации файлов;

- v - сортировка файлов по времени последнего доступа;

- с - использовать время создания файла при сортировке;

- s - размеры файлов указываются в блоках;

sort [-k номер-поля-в-строке] [список-файлов] - алфавитная и числовая сортировка файлов или строк файлов; режим сортировки определяется ключами. Команда многофункциональная, предусматривает много режимов сортировки. Некоторые ключи команды:

-d - сортировка по алфавиту (или по умолчанию);

-n - числовая;

-u - исключает повторяющиеся строки и т.д.

Практическая работа №3(3) Создание ссылок на файлы.

Цель работы:

1. Изучить понятие ссылки на файл.

2. Научиться создавать жесткие и символьные ссылки на файлы.

Порядок выполнения работы

Изучаются команды:

ln - создание ссылки на файл;

ls - просмотр атрибутов файла.

1) Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

2) Выведите на экран Терминала справку по следующим командам: ln, ls. Назначение и формат команд приведите в отчете.

3) Перейдите в Ваш личный каталог и создайте в нем текстовый файл и любой подкаталог.

4) Создайте жесткую ссылку с другим именем в созданном подкаталоге на созданный файл. Проанализируйте и сравните все атрибуты связанных файлов. Объясните отличия.

5) Уничтожьте один из связанных файлов. Проанализируйте и сравните все атрибуты связанных с ним файлов. Объясните изменения.