Skip to content

Instantly share code, notes, and snippets.

@Vostbur
Vostbur / sshclient.go
Created October 22, 2023 18:00
SSH Client with password auth
package main
import (
"fmt"
"log"
"os"
"strings"
"golang.org/x/crypto/ssh"
)
@Vostbur
Vostbur / PackageManagement.md
Last active August 14, 2023 19:48
Windows PackageManagement

Команды PackageManagement

Get-Command -Module PackageManagement
  • Find-Package — поиск пакета (программы) в доступных репозиториях
  • Find-PackageProvider — поиск провайдеров распространения пакетов
  • Get-Package — показывает список установленных пакетов
  • Get-PackageProvider — выводит список поставщиков пакетов, доступных на компьютере
@Vostbur
Vostbur / main.go
Created March 11, 2023 18:34
TCP scanner from Black Hat Go book
package main
import (
"fmt"
"net"
"sort"
)
func worker(ports, results chan int) {
for p := range ports {
@Vostbur
Vostbur / README.md
Created December 18, 2022 14:34
Stepic.Golang. Goroutines. The End

Необходимо написать функцию func merge2Channels(fn func(int) int, in1 <-chan int, in2 <- chan int, out chan<- int, n int).

Описание ее работы:

n раз сделать следующее

  • прочитать по одному числу из каждого из двух каналов in1 и in2, назовем их x1 и x2.
  • вычислить f(x1) + f(x2)
  • записать полученное значение в out
@Vostbur
Vostbur / README.md
Created December 18, 2022 11:25
Stepic.Golang. Goroutines

Вам необходимо написать функцию calculator следующего вида:

func calculator(arguments <-chan int, done <-chan struct{}) <-chan int

В качестве аргумента эта функция получает два канала только для чтения, возвращает канал только для чтения.

Через канал arguments функция получит ряд чисел, а через канал done - сигнал о необходимости завершить работу. Когда сигнал о завершении работы будет получен, функция должна в выходной (возвращенный) канал отправить сумму полученных чисел.

@Vostbur
Vostbur / README.md
Created December 17, 2022 08:47
Stepic. Golang. Work with Time

На стандартный ввод подается строковое представление двух дат, разделенных запятой (формат данных смотрите в примере).

Необходимо преобразовать полученные данные в тип Time, а затем вывести продолжительность периода между меньшей и большей датами.

Sample Input:

13.03.2018 14:00:15,12.03.2018 14:00:15
@Vostbur
Vostbur / README.md
Created December 16, 2022 17:10
Stepic. Golang. Work_with_json_2

На стандартный ввод подаются данные о студентах университетской группы в формате JSON:

{
    "ID":134,
    "Number":"ИЛМ-1274",
    "Year":2,
    "Students":[
        {
            "LastName":"Вещий",
            "FirstName":"Лифон",
@Vostbur
Vostbur / README.md
Created December 16, 2022 17:03
Stepic. Golang. Work with json

Данная задача ориентирована на реальную работу с данными в формате JSON. Для решения мы будем использовать справочник ОКВЭД (Общероссийский классификатор видов экономической деятельности), который был размещен на web-портале data.gov.ru.

Необходимая вам информация о структуре данных содержится в файле structure-20190514T0000.json, а сами данные, которые вам потребуется декодировать, содержатся в файле data-20190514T0100.json. Файлы размещены в нашем репозитории на github.com.

Для того, чтобы показать, что вы действительно смогли декодировать документ вам необходимо в качестве ответа записать сумму полей global_id всех элементов, закодированных в преложенном файле.

@Vostbur
Vostbur / birthdays.csv
Created May 28, 2022 13:25
Birthday announcements Telegram bot
date person
28-05-1981 Person One
28-05-1981 Person Two
05-06-1980 Person Three
@Vostbur
Vostbur / gists_backup.py
Created March 13, 2022 08:12
Backup (clone) all your own gists
#!/usr/bin/env python -B
# pip install PyGithub
from github import Github
import pathlib
import json
import os
gists = []