Unix и Скриптовые языки 2012 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
(Зачет по Bash)
(Задачи по Bash для "должников")
Строка 77: Строка 77:
 
# Напишите скрипт, принимающий в качестве параметра каталог. Задача скрипта состоит в том, чтобы изменить имя каждого файла в каталоге и подкаталогах дописав в начало число, равное глубине вложенности файла. Например, файл A/B/C/x.txt должен превратиться в A/B/C/3x.txt.
 
# Напишите скрипт, принимающий в качестве параметра каталог. Задача скрипта состоит в том, чтобы изменить имя каждого файла в каталоге и подкаталогах дописав в начало число, равное глубине вложенности файла. Например, файл A/B/C/x.txt должен превратиться в A/B/C/3x.txt.
 
# Напишите визуализатор сортировки пузырьком. При визуализации каждый элемент массива отображается столбиком из символов '#'. Высота столбика совпадает со значением элемента массива. Два столбика, соответствующие элементам, которые сравниваются в данный момент, должны отличаться по цвету от остальных.
 
# Напишите визуализатор сортировки пузырьком. При визуализации каждый элемент массива отображается столбиком из символов '#'. Высота столбика совпадает со значением элемента массива. Два столбика, соответствующие элементам, которые сравниваются в данный момент, должны отличаться по цвету от остальных.
 +
 +
Вариант для тех, кому разрешили делать "эти" задачи:
 +
 +
# Пусть у вас есть кластер состоящий из большого числа узлов. Список узлов находится в файле nodes.txt. Часто возникает ситуация завести нового пользователя и прописать его на всех узлах (это происходит там, где кто-то не знает, что можно использовать, например, LDAP ^) ). Ваша задача -- написать скрипт, который после запуска получает от пользователя все необходимые данные для создания нового пользователя и создает такого пользователя на всех узлах кластера.
 +
# Напишите интерактивную утилиту для работы с XEN. Должны поддерживаться следующие возможности - запуск и остановка виртуальной машины; доступ к консоли виртуальной машины; вывод информации о занятости дисков виртуальных машин.
  
 
== Рейтинг ==
 
== Рейтинг ==
 
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dEdwVXVZX3ZzVGJUY1ZiaEpjSG52SHc&output=html Рейтинг.]
 
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dEdwVXVZX3ZzVGJUY1ZiaEpjSG52SHc&output=html Рейтинг.]

Версия 09:24, 23 ноября 2012

Лектор - Кузнецов Антон Михайлович

Лекции.

Лекция 1 04.09.2012 История UNIX Слайды PDF Тест
Лекция 2 07.09.2012 Введение в команды UNIX Слайды PDF
Лекция 3 14.09.2012 Регулярные выражения. Sed, grep Слайды PDF
Лекция 4 21.09.2012 Bash scripts Слайды PDF Работа со строками Задание
Контрольная 28.09.2012 Задачи
Лекция 4 19.10.2012 Python введение Слайды PDF
Лекция 5 26.10.2012 Python строки Слайды PDF
Лекция 6 2.11.2012 Python модули, итераторы Слайды PDF PDF
Контрольная 9.11.2012 Тест PDF
Лекция 7 16.11.2012 Python ООП Слайды PDF

Зачет по Bash

Для зачета контрольной необходимо набрать не менее 10 баллов!
Стоимость одной задачи на контрольной - 2 балла.
До 23:59 30 сентября - 1 балл.
После - 0.5 балла.

Задачи по Bash для "должников"

Данные задачи необходимо решить для того, чтобы получить допуск для сдачи зачета! Зачет будет состоять из беседы и решения нескольких задач (часть из них в течение ограниченного времени в присутствии преподавателя).

  1. Найдите, сколько времени прошло с момента создания самого старого до создания самого молодого файла на компьютере.
  2. Напишите скрипт, принимающий в качестве параметра каталог. Задача скрипта состоит в том, чтобы изменить имя каждого файла в каталоге и подкаталогах дописав в начало число, равное глубине вложенности файла. Например, файл A/B/C/x.txt должен превратиться в A/B/C/3x.txt.
  3. Напишите визуализатор сортировки пузырьком. При визуализации каждый элемент массива отображается столбиком из символов '#'. Высота столбика совпадает со значением элемента массива. Два столбика, соответствующие элементам, которые сравниваются в данный момент, должны отличаться по цвету от остальных.

Вариант для тех, кому разрешили делать "эти" задачи:

  1. Пусть у вас есть кластер состоящий из большого числа узлов. Список узлов находится в файле nodes.txt. Часто возникает ситуация завести нового пользователя и прописать его на всех узлах (это происходит там, где кто-то не знает, что можно использовать, например, LDAP ^) ). Ваша задача -- написать скрипт, который после запуска получает от пользователя все необходимые данные для создания нового пользователя и создает такого пользователя на всех узлах кластера.
  2. Напишите интерактивную утилиту для работы с XEN. Должны поддерживаться следующие возможности - запуск и остановка виртуальной машины; доступ к консоли виртуальной машины; вывод информации о занятости дисков виртуальных машин.

Рейтинг