Kodomo

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

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

Практикум 7

Задания для работы в классе

Проверяется наличие единственного файла – сценария (скрипта) bash, все промежуточные файлы можете удалить.

Название и расположение файла:

~/term2/linux/<username>_pr7.sh

Как Вы могли догадаться, <username> нужно заменить на имя пользователя (желательно Ваше) на kodomo. Чтобы случайно не испортить/удалить <username>_was_here.txt, рекомендуется писать/проверять скрипт в другой папке, например, ~/term2/pr7. Только не забудьте переместить готовый скрипт!

Атрибуты файла:

Скрипт должен быть доступен на чтение всем, кроме группы, на исполнение и запись только Вам (rwx---r--). Правильно выставленные права будут проверяться и оцениваться наряду с правильным расположением и названием файла!

Содержание файла:

Скрипт должен начинаться со строки "шебанг" – указателя на интерпретатор bash:

#! /bin/bash

Далее все константы, которые могут Вам понадобиться (можете обойтись без них):

# Comments are allowed.
WD="some-very-long-path/"
SEP=","
...

Далее необходимые команды, циклы, комментарии и т.д.:

# Some comments could be here.
command1 -s "$SEP" -f "$WD"
command1 someargs > file.txt

# Some comments on the following loop.
for i in "one" "two" "three"
do
  echo "$i"
  command3 -in "${WD}/$i" >> file.txt
done

# Any additional comments.
command4 arg1 arg2
...

Не пугайтесь, цикл приведен просто для примера, в данном скрипте можно обойтись без циклов.

Скрипт должен:

  1. Скачивать из Swiss-Prot полные записи (не только последовательность!) всех известных белков синего кита (blue whale). Для этого Вам надо:

    • выяснить латинское название кита (Google, Wikipedia или NCBI Taxonomy);

    • узнать, какую мнемонику используют в UniProt для этого организма;

    • вызвать в скрипте одну из команд EMBOSS для скачивания из Swiss-Prot всех белков, чьи названия (UniProt ID) содержат соответствующую мнемонику (EMBOSS понимает некоторые маски).

    • Список записей Swiss-Prot должен располагаться в файле blue_whale_prots.swiss.

  2. Создавать таблицу, в которой для каждого белка должны содержаться: имя (UniProt ID), идентификатор (UniProt AC), длина, название организма и описание белка.

  3. Изменять в таблице все описания белков (description), удаляя из них все, что содержится в скобочках.
    • Не забудьте удалить пробел перед скобками.
    • Итоговый файл должен называться blue_whale_prots.desc.

  4. Ваш скрипт не должен мусорить. Если он создает какие-то временные файлы, то в конце они должны быть удалены.

Если кажется, что все уже сделано

Убедитесь, что скрипт лежит в правильной папке, правильно называется, имеет правильные права и что он работает!

Запустить скрипт на исполнение можно командой ./<script_name> или bash <script_name>

А теперь можете переходить к домашним заданиям :)