Skip to content

Instantly share code, notes, and snippets.

View Alex-Just's full-sized avatar

AlekseiK Alex-Just

  • Europe
View GitHub Profile
@Alex-Just
Alex-Just / generators.py
Last active January 22, 2017 10:56
Understanding Python generators
# https://eev.ee/blog/2016/07/31/python-faq-why-should-i-use-python-3/#yield-from
# https://jeffknupp.com/blog/2013/04/07/improve-your-python-yield-and-generators-explained/
# `yield`
# - pauses generator (saves its state) on the current line of code
# - returns yielded value (and control) to the caller
# - receives another `somevalue` from the caller via generator.send(somevalue)
# `yield from`
# - yields an entire sequence
# One-liner
pyenv global 3.5.2 && virtualenv .env -p $(pyenv which python) && . .env/bin/activate && python -V && pyenv global system
# List installed versions
pyenv versions
# Set global version to
pyenv global 3.5.2
# Check current set version
@Alex-Just
Alex-Just / habr_proxy.py
Last active January 17, 2017 12:53
Download target URL, append all 6 letter words with a ™ symbol, and display the outputs in the opened user's browser
#!/usr/bin/env python3
# Author: Alex Just <AlexJustEmail@gmail.com>
"""Download target URL, append all 6 letter words with a ™ symbol, and display the outputs in the opened user's browser
Project specification:
https://docs.google.com/document/d/1bua6MXG9rHyreSPVPEZBkk14WYHy31ia4Vb2rnrgvS0/edit
Installation:
$ pip3 install bs4 vcrpy
whoami
# Add user to sudoers
sudo adduser <username> sudo
# Switch user
su - user2
# List all local users
cut -d: -f1 /etc/passwd
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get upgrade
@Alex-Just
Alex-Just / ssh.sh
Last active February 12, 2017 13:24
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
# or
cat ~/.ssh/id_rsa.pub | ssh-copy-id user@host
ssh-add -K ~/.ssh/id_rsa
# You might need to start ssh-agent
eval `ssh-agent -s`
python3 -c "import requests; proxies = {'http': '127.0.0.1:21233'}; response = requests.get('http://ya.ru', proxies = proxies); print ('Elapsed time: ', response.elapsed)"
# Upgrading all packages with pip
pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U
# Pip freeze for only project requirements.txt
pip freeze -r requirements.txt | grep -B100 "pip freeze" | grep -v "pip freeze" > /tmp/requirements.txt && mv /tmp/requirements.txt .
# Login as a UNIX user (IDENT/PEER authentication)
sudo -u postgres psql postgres
# Login via PostgreSQL's own managed username/password (TCP authentication)
psql username -h 127.0.0.1 -d dbname
# Switch to postgres user via root
sudo -i -u postgres
# Backup DB
# OSX
lsof -i :8000
# Ubuntu
sudo netstat -peanut