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 год