Практическая работа по предмету UNIX
– системы печати, электронной почты и т.д.
(/usr/spool/), файлы утилит UNIX (/usr/bin), дополнительные
программы, используемые на данном компьютере (usr/local),
электронное справочное руководство (/usr/man), справочная
информация (/usr/adm). Большинство вещей, содержащихся в /usr
необязательны для системы. Но это такие необязательные вещи,
которые делают систему полезной и интересной. /usr содержит
много больших программных пакетов и конфигурационных файлов,
которые их сопровождают. /usr/bin настоящее хранилище для
различных программ UNIX. Он содержит большинство выполняемых
программ, которых нет ни в каких других местах, например, в том
же /bin их нет. /usr/etc точно также, как и /etc, содержит
всевозможные системные программы и конфигурационные файлы.
/usr/etc содержит даже больше утилит и файлов. В общем, файлы,
находящиеся в /usr/etc несущественны для системы, в отличие от
тех, которые находятся в /etc, и очень существенны. /usr/man
этот каталог содержит страницы справочного руководства. Здесь
два подкаталога для каждого раздела руководства. Например,
/usr/man/man1 содержит исходные тексты (неотформатированный
оригинал) страниц руководства в разделе 1 и /usr/man/cat1
содержит отформатированные страницы для раздела 1. /usr/spool
содержит файлы, которые предварительно формируются для других
программ. Например, если Ваша машина подключена к сети, входная
почта будет помещаться в /usr/spool/mail до тех пор, пока вы не
прочитаете ее или не удалите. Входящие и исходящие новости
помещаются в /usr/spool/news и т.д. /usr/adm содержит различные
файлы, интересные системному администратору, специфические
системные файлы, фиксирующие ошибки и проблемы, возникающие в
системе. Другие файлы фиксируют входы в систему, как и неудачные
попытки войти. /var содержит каталоги, которые часто меняются в
размере или имеют тенденцию быстро расти. В некоторых версиях
UNIX используется вместо /usr/spool.
В формате MS Word 97
1. Копирование, переименование и перемещение файлов.
При работе с файлами могут возникать различные ситуации, вызывающие
необходимость копирования, перемещения или переименования существующих
файлов. Например, кому-то нужна копия Вашего файла, а у него нет прав
доступа в Ваш каталог, однако выход есть – копируйте файл в каталог /tmp
(это, как Вы помните, каталог временных файлов; каждый пользователь имеет
право чтения и записи файлов в этом каталоге) или, возможно, Вас просто не
устраивает имя или месторасположение файла.
В UNIX все эти проблемы решают команды cp (copy - копировать) и mv (move -
перемещать).
1. Копирование файлов.
1. Копирование одиночного файла.
Для копирования одиночного файла используется команда
cp <имя файла1> <имя файла2 >,
где файл1 – файл, который Вы копируете, а файл2 – файл, в
который Вы копируете.
Скопируйте, например, файл .profile, находящийся в Вашем
личном каталоге, для чего введите команду
cp .profile pro
Команда
ls -l
продемонстрирует Вам, что Вы создали файл pro, который
является копией файла .profile.
Обратите внимание, что, копируя файлы, Вы должны соблюдать
осторожность при выборе имен файлов, т.к. команда cp не
будет предупреждать Вас, что файл, в который Вы копируете
уже существует, а просто заменит его новым:
cp .kermrc pro
Команда
ls –l
покажет, что файл pro - копия .profile исчез, а это имя
теперь носит копия файла .kermrc.
Однако в разных каталогах можно использовать одинаковые
имена файлов.
2. Копирование нескольких файлов.
Команда cp позволяет скопировать и несколько файлов
одновременно. В этом случае синтаксис команды cp следующий:
cp <имя файла1>… <имя файла N > <имя каталога >,
где файл1 … файл N – копируемые файлы, а последний аргумент
является каталогом, в который Вы копируете.
Каталог, куда Вы копируете, обязательно должен
существовать, при попытке копирования нескольких файлов в
несуществующий каталог, система укажет Вам на
синтаксическую ошибку. Попробуйте ввести такую команду:
cp .kermrc .profile newcat
Вы увидите следующее сообщение:
Usage: cp file1 file2
cp file… dir
поясняющее, что нужно использовать имя каталога в случае
копирования нескольких файлов, либо копировать один файл в
другой файл.
Поэтому давайте создадим новый каталог в Вашем личном
каталоге:
mkdir newcat
Проверьте, появился ли каталог newcat с помощью команды
ls –F
Среди файлов и подкаталогов текущего каталога Вы должны
найти имя newcat, отмеченное косой чертой / (помните, что
это значит?).
Теперь, когда каталог создан, можно повторить попытку
копирования файлов:
cp .kermrc .profile newcat
На этот раз она должна быть более удачной, проверим это:
cd newcat; ls -а
Команда ls -а вывела на экран список файлов текущего
каталога newcat – это файлы .kermrc и .profile.
При копировании нескольких файлов можно использовать
шаблоны. Давайте создадим еще один подкаталог Вашего
личного каталога:
cd; mkdir secnew
В подкаталоге newcat создадим файлы
echo 'hello' >hel; date>vrem1
А теперь с помощью шаблона * скопируем в подкаталог secnew
все файлы подкаталога newcat:
cp newcat/* secnew
Проверьте результаты нашей работы, введя уже знакомые Вам
команды:
cd secnew; ls -а
Не удивляйтесь, что не скопировались файлы .kermrc .profile
- их имена начинаются с точки, а шаблон * не задает таких
имен. (Для задания подобных имен используют шаблон .*)
3. Копирование файлов и подкаталогов.
Опция -r команды cp позволяет копировать файлы в каталоге,
включая любое количество подкаталогов и входящих в них файлов.
Попробуйте скопировать все файлы и подкаталоги каталога newcat в
каталог thnew. Для этого введите следующие команды
cd
cp -r newcat thnew
Команды
cd thnew
ls –Fa
убедят Вас, что все получилось.
Опция -r также разрешает использовать шаблоны. Командная строка
cd; mkdir fornew; cp -r * fornew
позволит Вам скопировать все файлы и подкаталоги Вашего личного
каталога в каталог fornew (за исключением тех, имена которых
начинаются с точки). Проверку выполнят все те же команды:
cd fornew
ls –Fa
Если Вы употребите команду cp без -r, то использование шаблона *
приведет лишь к копированию файлов текущего каталога:
cd; mkdir finew
cp * finew
эта команда копирует все файлы Вашего личного каталога в
подкаталог finew, исключая все подкаталоги. Когда cp встречает
каталог, она выдает сообщение:
cp: fornew: Is a directory
…
(fornew: это каталог). Команды
cd finew
ls –Fa
докажут Вам, что скопированы лишь файлы.
Вы можете также скопировать и любой подкаталог
cp -r fornew sixnew
Команда
ls –l
укажет Вам, что созданный каталог sixnew является копией
каталога fornew.
2. Перемещение файлов и каталогов.
1. Перемещение файлов.
Если Вы хотите переместить файл, т.е. Вам нужна копия файла
в другом каталоге, а старая не нужна, то используйте
команду
mv <имя файла> <имя каталога>,
здесь, очевидно, первый параметр - имя файла, который Вы
перемещаете, а второй - имя существующего каталога, в
который Вы перемещаете.
Выведите на экран список файлов и подкаталогов Вашего
личного каталога и подкаталога secnew
| | скачать работу |
Практическая работа по предмету UNIX |