Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

LR OC / вар 26 / lr_1

.docx
Скачиваний:
5
Добавлен:
30.04.2013
Размер:
22.94 Кб
Скачать

Министерство образования Российской Федерации.

Московский государственный институт электроники и математики

(технический университет)

Кафедра Кибернетики

Лабораторная работа № 1

“Изучение команд для работы с файлами и каталогами”

по дисциплине «Операционные системы»

Выполнил студент группы С-41

Проверил

Гостев И.М.

Москва 2010

  1. Создание файлового поддерева, просмотр его структуры из различных точек файлового дерева. Команды mkdir, rmdir, cd, pwd, ls.

mkdirкоманда для создания новой директории. Новая директория будет создана в текущей директории.

rmdir – команда, которая удаляет директорию. Команда не удалит директорию если она не пуста.

сd – эта команда командной строки используется для изменения текущего рабочего каталога

pwd – консольная утилита, которая выводит полный путь от корневого каталога к текущему рабочему каталогу.

ls – распечатывает имена всех файлов и каталогов, за исключением тех, которые начинаются с точки.

Пример:

c-41-26$ ls

bd.txt laba1

c-41-26$ mkdir laba11

c-41-26$ ls

bd.txt laba1 laba11

c-41-26$ rmdir laba11

c-41-26$ ls

bd.txt laba1

c-41-26$ pwd

/home/student/c-41/c-41-26

  1. Работа с файлами, работа с группой файлов. Команды cat, rm, mv, wc, cmp diff, comm. Метасимволы “*”, “?”.

cat – утилита, выводящая последовательно указанные файлы, таким образом, объединяя их в единый поток.

rm – утилита, используемая для удаления файлов из файловой системы. Ключи, использующиеся с rm:

mv – утилита, используется для перемещения или переименования файлов или каталогов.

wc выводит число переводов строк, слов и байт для каждого указанного файла и итоговую строку, если было задано несколько файлов. Если входной файл не задан, или равен ‘-‘, то данные считываются со стандартного ввода. В первой колонке содержится количество строк, во второй — слов, в третьей — символов.

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

diff – выдает на стандартный вывод те строки файлов, которые нужно изменить, чтобы привести файлы в соответствие друг с другом. Если вместо файла1 или файла2 стоит -, то используется стандартный ввод.

comm – читает файл1 и файл2, которые должны быть предварительно лексически отсортированы, и генерирует вывод, состоящий из трёх колонок текста: строки, найденные только в файле файл1; строки, найденные только в файле файл2; и строки, общие для обоих файлов.

Пример:

c-41-26$ cat ->bd.txt

123

321

123

321

nn

cc

c-41-26$ cat bd.txt

123

321

123

321

nn

cc

c-41-26$ mkdir kl

c-41-26$ ls

bd.txt dmv.txt laba1

c-41-26$ rm -r dmv.txt

c-41-26$ ls

bd.txt laba1

c-41-26$ mv laba1 lama11

c-41-26$ ls

bd.txt lama11

c-41-26$ wc bd.txt

3 15 100 bd.txt

c-41-26$ diff -i bd.txt bd11.txt

2c2

< 321

---

> 333

5,6c5

<

< ert

---

> r

c-41-26$ comm bd.txt bd11.txt

123

321

123

321

333

123

321

ert

r

  1. Информационные команды, работа с почтой. Команды date, who, tty, df, file, ps, du.

date – утилита для работы с системными часами. Выводит текущую дату и время в различных форматах и позволяет устанавливать системное время.

who – показывает текущих пользователей в компьютерной системе

tty – получение имени терминала

df – показывает список всех файловых систем по именам устройств, сообщает их размер, занятое и свободное пространство и точки монтирования.

file – предназначена для определения типа файла.

ps –выводит отчёт о работающих процессах.

du – программа для оценки занимаемого файлового пространства.

Пример:

c-41-26$ date

среда, 28 апреля 2010 г. 22:15:58 (MSD)

c-41-26$ who

c-41-26 ttyp0 28 апр 22:07 (77.232.15.183)

c-41-26$ tty

/dev/ttyp0

c-41-26$ df

Filesystem 1K-blocks Used Avail Capacity Mounted on

/dev/ad4s1h 169912000 154048548 2270492 99% /

c-41-26$ ps

PID TT STAT TIME COMMAND

99395 p0 SsJ 0:00,03 -bash (bash)

99590 p0 R+J 0:00,00 ps

c-41-26$ du

4 .

c-41-26$ file -L bd.txt

bd.txt: ASCII text

  1. Обработка текстовых (структурированных) файлов.

Создать текстовый файл (БД) по преподавателям.

Сортировать БД по алфавиту.

Сортировать БД по факультету.

Выполнить поиск по ФИО преподавателя.

Пример:

c-41-26$ cat -> bd.txt

Belikova N.M. docent AVT VS

Vlasov M.M. prepodovatel VSIS VC

Anichkina M.T. aspirant MUS VS

Goncharuk F.S. docent TAT VV

c-41-26$ sort bd.txt

Anichkina M.T. aspirant MUS VS

Belikova N.M. docent AVT VS

Goncharuk F.S. docent TAT VV

Vlasov M.M. prepodovatel VSIS VC

c-41-26$ sort --k=5 -d bd.txt

Vlasov M.M. prepodovatel VSIS VC

Anichkina M.T. aspirant MUS VS

Belikova N.M. docent AVT VS

Goncharuk F.S. docent TAT VV

c-41-26$ sort --k=5 -d bd.txt -r

Goncharuk F.S. docent TAT VV

Belikova N.M. docent AVT VS

Anichkina M.T. aspirant MUS VS

Vlasov M.M. prepodovatel VSIS VC

c-41-26$ grep Goncharuk bd.txt

Goncharuk F.S. docent TAT VV

Внести новые записи в БД

echo — команда Unix, предназначенная для отображения строки текста.

Пример:

c-41-26$ cat bd.txt

Belikova N.M. docent AVT VS

Vlasov M.M. prepodovatel VSIS VC

Anichkina M.T. aspirant MUS VS

Goncharuk F.S. docent TAT VV

c-41-26$ echo bd.txt

bd.txt

c-41-26$ echo "lolo " >> bd.txt

c-41-26$ cat bd.txt

Belikova N.M. docent AVT VS

Vlasov M.M. prepodovatel VSIS VC

Anichkina M.T. aspirant MUS VS

Goncharuk F.S. docent TAT VV

lolo

tail — утилита в UNIX, выводящая несколько (по умолчанию 10) последних строк из файла.

uniq — утилита Unix, с помощью которой можно вывести или отфильтровать повторяющиеся строки в файле.

c-41-26$ tail -2 bd.txt

Anichkina M.T. aspirant MUS VS

Goncharuk F.S. docent TAT VV

c-41-26$ uniq -u bd.txt

Belikova N.M. docent AVT VS

Vlasov M.M. prepodovatel VSIS VC

Anichkina M.T. aspirant MUS VS

Goncharuk F.S. docent TAT VV

c-41-26$ uniq -c bd.txt

1 Belikova N.M. docent AVT VS

1 Vlasov M.M. prepodovatel VSIS VC

1 Anichkina M.T. aspirant MUS VS

1 Goncharuk F.S. docent TAT VV

  1. Изменение прав доступа к файлам и команда вывода списка прав доступа к файлу.

ls -l – выдавать (в одноколоночном формате) тип файла, права доступа к файлу, количество ссылок на файл, имя владельца, имя группы, размер файла (в байтах), временной штамп и имя файла.

chmod - изменение прав доступа к файлам и папкам. Каждое право имеет числовой код и может быть задано вручную:

400 — владелец имеет право на чтение;

200 — владелец имеет право на запись;

100 — владелец имеет право на выполнение;

40 — группа имеет право на чтение;

20 — группа имеет право на запись;

10 — группа имеет право на выполнение;

4 — остальные имеют право на чтение;

2 — остальные имеют право на запись;

1 — остальные имеют право на выполнение.

Суммировав эти коды можно получить символьную запись. Например, chmod 444 {имяфайла}: 400+40+4=444 — все имеют право только на чтение.

Пример:

c-41-26$ ls -l

total 4

-rw-r--r-- 1 c-41-26 c-41 115 29 апр 16:28 bd.txt

drwxr-xr-x 4 c-41-26 c-41 512 28 апр 22:48 lama11

c-41-26$ chmod 444 bd.txt

c-41-26$ ls -l

total 4

-r--r--r-- 1 c-41-26 c-41 115 29 апр 16:28 bd.txt

drwxr-xr-x 4 c-41-26 c-41 512 28 апр 22:48 lama11

c-41-26$ chmod 412 bd.txt

c-41-26$ ls -l

total 4

-r----x-w- 1 c-41-26 c-41 115 29 апр 16:28 bd.txt

drwxr-xr-x 4 c-41-26 c-41 512 28 апр 22:48 lama11

c-41-26$ chmod 777 bd.txt

c-41-26$ chmod 777 lama11

c-41-26$ ls -l

total 4

-rwxrwxrwx 1 c-41-26 c-41 115 29 апр 16:28 bd.txt

drwxrwxrwx 4 c-41-26 c-41 512 28 апр 22:48 lama11

Соседние файлы в папке вар 26