Skip to content

Instantly share code, notes, and snippets.

View nclv's full-sized avatar
🖥️
Focusing

Nicolas Vincent nclv

🖥️
Focusing
View GitHub Profile
alias dockershell="docker run --rm -i -t --entrypoint=/bin/bash"
alias dockershellsh="docker run --rm -i -t --entrypoint=/bin/sh"
function dockershellhere() {
dirname=${PWD##_/}
docker run --rm -it --entrypoint=/bin/bash -v `pwd`:/${dirname} -w /${dirname} "$@"
}
function dockershellshhere() {
dirname=${PWD##_/}
@nclv
nclv / smbimpacket.sh
Created January 3, 2020 16:30
SMB Server with Impacket
smbservehere() {
local sharename
[[ -z $1 ]] && sharename="SHARE" || sharename=$1
docker run --rm -it -p 445:445 -v "${PWD}:/tmp/serve" rflathers/impacket smbserver.py -smb2support $sharename /tmp/serve
}
def iterate(iterable, n):
first = []
for second in iterable:
first.append(second)
if len(first) == n:
yield first
first.pop(0)
yield first
def main():
@nclv
nclv / atom
Last active March 21, 2020 00:06
atom-ide-ui
busy-signal
ide-python
intentions
language-latex
keybinding-cheatsheet
latex
markdown-preview-enhanced
minimap
pdf-view
import functools
def while_true(func):
""" Décore la fonction d'une boucle while True pour les inputs.
On peut tester ses propres exceptions.
"""
@functools.wraps(func)
def wrapper(*args, **kwargs):
import logging
def setup_custom_logger(name, here):
"""Création d'un logger.
On veut logger dans le terminal (ERROR) et dans un fichier de log (DEBUG).
Debug (logger.debug): Provide very detailed output. Used for diagnosing
problems.
from time import perf_counter_ns
from random import randint
def bench(preparation, a_mesurer, repetitions=30):
temps = []
for _ in range(repetitions):
entree = preparation()
debut = perf_counter_ns()
a_mesurer(entree)
fin = perf_counter_ns()
@nclv
nclv / performances.sh
Last active September 8, 2020 08:07
Mesures de performances en Python.
#!/usr/bin/env bash
: '
VINCENT Nicolas
Utilisation de cProfile pour créer un fichier .prof puis affichage du fichier avec snakeviz.
USAGE:
bash performances.sh pyhack.py perf.prof
'
echo $(python3 --version)
from more_itertools import ilen
def nombre_occurrences(liste, element):
return ilen(filter(lambda el: el == element, liste))
def element_maj(liste):
return next(filter(lambda element: nombre_occurrences(liste, element) > len(liste)//2, liste), None)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
inversion_counting.py : compte le nombre d'inversion à effectuer pour trier une séquence
"""
from empirical_complexity import empirical_complexity