Учебная страница курса биоинформатики,
год поступления 2019
Выучить и освоить к следующему занятию:
Вход на kodomo через putty
- Команды:
pwd, ls (опции -l, -R, -1 и еще ≥2, разбор строки выхода ls -l), cd, mkdir, rmdir;
echo, cp, mv, more, less, cat, rm, wc; опции команды wc;
grep
man, man -k
history, exit
- Специальные обозначения директорий:
/, .., ., ~
- Что такое абсолютный и относительный пути к файлу или директории
- Операторы перенаправления потоков:
>, >>, |
- Спецсимволы в масках имен файлов:
*, ?, экранирование спецсимвола (например, \* или так '*'), [0-9]
- Удобности:
tab и tab tab
- стрелки вверх и вниз
- копирование с экрана и вставка
history
Задания
Результатом выполнения практикума являются файлы:
~/term1/block1/credits/silwer_was_here.dat
~/term1/block1/credits/<username>_was_here.txt
~/term1/block1/credits/<username>_wget_error.log
~ - ваша домашняя директория, не перепутайте!) <> - обозначение для той области, которую вам необходимо заменить. сами знаки <> вводить не нужно.
Перед записью на проверку Вы опять можете проверить соответствие формальным требованиям к расположению и именам файлов с помощью команды (работает из любой папки):
~is_rusinov/check_pr4.sh
— ИР
0. Повтор основ
Создайте директорию ~/term1/block1/pr4 и перейдите в нее
Для подключения к серверу kodomo.fbb.msu.ru из:
* Windows:
Воспользуйтесь программой PuTTY.
Host Name: kodomo.fbb.msu.ru Port: 22 Connection type: SSH
Графические инструкции можно найти в лекции.
* GNU/Linux, OS X, etc
ssh <username>@kodomo.fbb.msu.ru
Умение подключаться из Windows при помощи Putty обязательно
Сначала осмотритесь. Команда pwd (man pwd) покажет вам в какой вы директории. Команда ls (man ls)покажет список файлов и поддиректорий в этой директории.
Используйте команды mkdir (man mkdir) и cd (cd). Например, так.
Чтобы не тратить время на набор лишних символов чаще используйте клавишу Tab (табулятор).
1. Скопируйте файл с другого сервера
При помощи WinSCP (или scp для Linux/macOS) скопируйте файл /home/domain/stud1/silwer_was_here.dat c моего сервера к в директорию ~/term1/block1/credits/
Данные для подключения к моему серверу:
protocol: scp hostname: vsb.fbb.msu.ru port: 22022 login: stud1 passwd: stud1
посмотрите содержимое файла, что вы там видите?
2. Скопируйте файлы с расширением txt из директории /P/y19/term1/Block1/some_strange_files в директорию pr4
Для копирования файлов воспользуйтесь командой cp (man cp)
В простейшем виде синтаксис команды выглядит следующим образом: cp <файл> <имя копии файла>. Внимательно отнеситесь к описанию путей к файлам.
Но копировать файлы по одному достаточно непрактично. Оптимизируйте эту операцию при помощи файловых масок (регулярных выражений).
Проверьте, что получилось (команды ls и less).
Если, случайно, вы скопировали не только нужные файлы, то удалите лишние при помощи команды rm <имя файла>. Вместо имени файла можно написать маску имен файлов. Будьте аккуратны! Корзины и операций восстановления в файлов в GNU/Linux нет. Для перестраховки используйте вызов rm -i или rm -I. Прочитайте в мануале (man rm) за что отвечают эти опции.
3. Определите уникальное содержимое файлов из предыдущего задания
Имеются в виду файлы txt, которые вы себе скопировали.
Вывести содержимое файлов можно при помощи команды cat <one_file> <or_more_files>. (man cat)
Отфильтровать уникальное содержимое можно при помощи команды uniq, только внимательно прочтите документацию (man uniq) к программе перед ее использованием.
Для передачи выдачи одной программы на вход другой воспользуйтесь конвейером ( он же "пайп", знак |), например так: cat smth | uniq.
4. Создайте директорию term1/block1/credits и в ней файл с отчетом <username>_was_here.txt
В файл отчета <username>_was_here.txt внесите следующие строки:
Первая строка: "absolute path to credits dir"
Используйте команду echo <строка>. Когда освоитесь с ней – перенаправьте ее выход в файл оператором ">": echo <строка> > <имя файла>
Вторая строка: сам путь.
Используйте оператор ">>" для дописывания в конец файла
Далее добавьте в этот файл команду, которую вы использовали для копирования файлов по маске.
Далее добавьте в этот файл результат выполнения задания 3 и команду, при помощи которой вы его получили.
Проверьте содержимое файла командой less <имя файла>. Выход "q". Проверьте, появилось ли приглашение командной строки bash: "....$ " .
Содержимое файла можно также заполнить при помощи текстового редактора.
5. Воспользуйтесь командой wget
При помощи команды wget скачайте главную страницу сайта ФББ:
wget fbb.msu.ru
посмотрите содержимое файла, что вы там видите?
А теперь попробуйте скачать с сайта ФББ страницу какой-нибудь аминокислоты, например:
wget fbb.msu.ru/ala
выхлоп команды wget перенаправьте в файл ~/term1/block1/credits/<username>_wget_error.log
для перенаправления потоков можно использовать символы:
> - стандартый поток вывода
2> - стандартный поток ошибок
>>, 2>> - дописывать в файл
| - перенаправить стандартный поток вывода в стандартный поток ввода
2>&1 - стандартный поток ошибок в стандартный поток вывода
Для штатного выходы из linux выполните команду exit
Если команда exit не выполнена, а вы закрываете окно, то список выполненных за сеанс команд не запоминается. Значит, при следующем заходе команда history не вспомнит об этих командах.
mkdir term1 (в текущей директории создается поддиректория term1)
ls (чтобы проверить что получилось)
cd term1 (перейти в term1; другими словами, сделать term1 текущей директорией; текущую директорию называют также рабочей)
pwd (проверить, что получилось)
mkdir block1 и т.д.
mkdir credits и т.д.