Skip to content

Instantly share code, notes, and snippets.

@NickTikhomirov
Created March 4, 2019 20:30
Show Gist options
  • Save NickTikhomirov/2b91c5ba30f73ddc980e6f0cdf7f27fa to your computer and use it in GitHub Desktop.
Save NickTikhomirov/2b91c5ba30f73ddc980e6f0cdf7f27fa to your computer and use it in GitHub Desktop.
lab01

Laboratory work I

Данная лабораторная работа посвещена изучению утилит для разработки проектов

Tasks

  • 1. Ознакомиться со ссылками учебного материала
  • 2. Выполнить инструкцию учебного материала
  • 3. Составить отчет и отправить ссылку личным сообщением в Slack

Tutorial

Export - это как define в c++ (для констант), alias - тоже, но для команд

$ export GITHUB_USERNAME=NickTikhomirov
#Обозначаем слово выше за мое имя на гитхабе
$ export GIST_TOKEN=ххххххххххххх
#Обозначаем слово выше за мой токен
$ alias edit=nano
#Зачем-то назначаем nano для команды edit

Учимся создавать директории, входить в них и выходить

$ mkdir -p ${GITHUB_USERNAME}/workspace
# Создаем директорию с указанным выше адресом
$ cd ${GITHUB_USERNAME}/workspace
# Заходим в свежесозданную директорию
$ pwd
# Выводит текущую директорию
$ cd ..
# Выход на директорию выше
$ pwd

Создаем кучу директорий и заходим в директорию workspace

$ mkdir -p workspace/tasks/
$ mkdir -p workspace/projects/
$ mkdir -p workspace/reports/
$ cd workspace

Загрузка и распаковка NodeJS

# Debian
$ wget https://nodejs.org/dist/v6.11.5/node-v6.11.5-linux-x64.tar.xz
# Качаем NodeJS
$ tar -xf node-v6.11.5-linux-x64.tar.xz
# Разархивируем NodeJS
$ rm -rf node-v6.11.5-linux-x64.tar.xz
# Выкидываем архив
$ mv node-v6.11.5-linux-x64 node
# Перемещаем содержимое архива

Обновление PATH

$ ls node/bin
# Выводит содержимое node/bin
$ echo ${PATH}
# Вывод на экран переменной PATH
$ export PATH=${PATH}:`pwd`/node/bin
# Обозначение 
$ echo ${PATH}
$ mkdir scripts
#Создание директории scripts
$ cat > scripts/activate<<EOF
export PATH=\${PATH}:`pwd`/node/bin
EOF
$ source scripts/activate

Установка gistup

$ npm install -g gistup
# Установка пакета через менеджер пакетов
$ ls node/bin
# Выводит содержимое этой директории

Пишем в файл gistup.json скобки и тест в них

$ cat > ~/.gistup.json <<EOF
{
  "token": "${GIST_TOKEN}"
}
EOF

Report

$ export LAB_NUMBER=01
$ git clone https://github.com/tp-labs/lab${LAB_NUMBER} tasks/lab${LAB_NUMBER}
$ mkdir reports/lab${LAB_NUMBER}
$ cp tasks/lab${LAB_NUMBER}/README.md reports/lab${LAB_NUMBER}/REPORT.md
$ cd reports/lab${LAB_NUMBER}
$ edit REPORT.md
$ gistup -m "lab${LAB_NUMBER}" # enter: yes↵

Links

Unix commands

Package Managers

Software

Homework

  1. Скачайте библиотеку boost с помощью утилиты wget. Адрес для скачивания https://sourceforge.net/projects/boost/files/boost/1.69.0/boost_1_69_0.tar.gz.
  2. Разархивируйте скаченный файл в директорию ~/boost_1_69_0
  3. Подсчитайте количество файлов в директории ~/boost_1_69_0 не включая вложенные директории.
  4. Подсчитайте количество файлов в директории ~/boost_1_69_0 включая вложенные директории.
  5. Подсчитайте количество заголовочных файлов, файлов с расширением .cpp, сколько остальных файлов (не заголовочных и не .cpp).
  6. Найдите полный пусть до файла any.hpp внутри библиотеки boost.
  7. Выведите в консоль все файлы, где упоминается последовательность boost::asio.
  8. Скомпилирутйе boost. Можно воспользоваться инструкцией или ссылкой.
  9. Перенесите все скомпилированные на предыдущем шаге статические библиотеки в директорию ~/boost-libs.
  10. Подсчитайте сколько занимает дискового пространства каждый файл в этой директории.
  11. Найдите топ10 самых "тяжёлых".
Copyright (c) 2015-2019 The ISC Authors
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment