Kodomo

Пользователь

Учебная страница курса биоинформатики,
год поступления 2015

Задания

Результатом выполнения практикума являются файлы:

kodomo.fbb.msu.ru:~/term2/linux/credits/cds.py

kodomo.fbb.msu.ru:~/term2/linux/credits/cds.sh

kodomo.fbb.msu.ru:~/term2/linux/credits/times.txt

В ходе выполнения практикума вам необходимо написать программы на языках Python (cds.py) и Bash (cds.sh) и сравнить времена их разработки и выполнения. Время разработки (то есть то время, которые вы затратили на написание программы) необходимо замерять самостоятельно. Время выполнения программы можно измерить при помощи команды time (man time) — вас будет интересовать графа real (астрономическое, то есть реально время выполнения программы).

Содержимое файла kodomo.fbb.msu.ru:~/term2/linux/credits/times.txt должно иметь следующий вид:

Python
development XX.XX h
execution YY.YY s

Bash
development XX.XX h
execution YY.YY s

<Ваши комментарии о том, на каком из языков вам было комфортнее и быстрее решать поставленную задачу. И вообще любые комментарии и впечатления от использования командной строки>

Ваши программы должны проделывать следующие операции:

Достаточно в формате mypgrog <input_file> <output_file>

Для тестирования используйте файл /P/y15/term2/Block2/id_list.txt (рекомендуется скопировать его в свою рабочую директорию)

Учтите, что файл id_list.txt создан в операционной системе Windows и для корректной работы с ним вы должны конвертировать переносы строк в формат, совместимый с UNIX/Linux.

Например так:

dos2unix -n <infile> <outfile>

Обратите внимание на флаг -n !

Скрипты на языке Python можно также запускать из командной строки на kodomo, аналогично тому, как вы делали это в FAR:

python <scriptname.py> <infile> <outfile>

Для вывода информации в <STDERR> в языке Python можно использовать следующий сниппет:

import sys
sys.stderr.write('TEXTGOESHERE\n')

Чтобы вспомнить как пользоваться модулем urllib2, посмотрите памятку к практикуму 9 из предыдущего семестра.

Предполагаемый список команд (задачу можно решить более чем одним способом!) для Bash скрипта:

echo
cat
for
wget
grep

При поиске квалификаторов CDS обратите внимание на то, чтобы в ответе не оказались посторонние строчки со словом CDS! (например, цистеин, аспарагиновая кислота, серин из последовательности :))

В качестве подсказок, конспекты предыдущих лет:

Конспект лекции

Краткое руководство по grep

Регулярные выражения для grep