
Tasks_1_solve
.pdf
Каф. ЦВТИ. Учебная практика 2013
План и задачи курса

Задача 1
Записать в файл 100 строк вида $i_str, где $i – номер строки. Файл назвать как угодно

Решение
●Не очень хорошее решение
$ for i in `seq 1 100`; do echo ${i}_str >> strings; done
●Хорошее решение
$ for i in `seq 1 100`; do echo ${i}_str; done > strings

Задача 2
Из файла, полученного в задаче 2, вывести на экран строки с 20й по 40ю

Решение
$ head -n 40 strings | tail -n 20 $ tail -n 80 strings | head -n 20

Задача 3
Получить последние 6 символов из md5 хэша любой введенной строки

Решение
$ echo mystring | md5sum | cut -c -6

Задача 4
1.Создать 10 файлов с именами time_$i, где $i – номер файла
2.Время создания было записано в файл в формате unix time
3.Время создания должно различаться на 2 секунды

Решение
$ for i in `seq -w 1 10`; do date +%s > time_$i; sleep 2; done
Доказательство:
root@spb-debian:/tmp/tasks/4$ ls
time_01 time_03 time_05 time_07 time_09
time_02 time_04 time_06 time_08 time_10
root@spb-debian:/tmp/tasks/4# cat *
1373579758
1373579760
1373579762
1373579764
1373579766
1373579768
1373579770
1373579772
1373579774
1373579776

Задача 5
1.Переместить файлы из задачи 4 в отдельный каталог first
2.В каталоге second создать дубликаты этих файлов с именами $filename_second, где $filename – имя файла оригинала
3.Изменить время изменения файлов *_second так, чтобы оно стало меньше на 1 год