Skip to content

Instantly share code, notes, and snippets.

View nerflad's full-sized avatar

Eric Bailey nerflad

View GitHub Profile
@nerflad
nerflad / convertbase.py
Last active April 3, 2016 21:24
Python 2: Convert base 10 number to desired base
# convert base10 number to desired base
def convertbase(num, base):
mods = []
while num >= base:
mods.append(num % base)
num = num / base
if num <= base:
mods.append(num)
mods.reverse()
@nerflad
nerflad / file_len.py
Created April 3, 2016 21:24
Python 2: Get file linecount
import os
def file_len(fname): #get file linecount
if os.stat(fname).st_size == 0:
return 0
with open(fname) as f:
for i, l in enumerate(f):
pass
return i+1
@nerflad
nerflad / left-or-right.py
Last active April 5, 2016 00:16
For use by the TSA instead of their $1.4m iOS app...
import os, datetime, random
while True:
os.system('clear')
print "ENTER to continue, or type 'quit'"
print datetime.datetime.now()
print ''
print(random.choice(('Left', 'Right')))
print ''
prompt = raw_input("")
if prompt == 'quit':
@nerflad
nerflad / Recursive int adder (py)
Last active June 24, 2016 03:13
Takes arguments of any basic data type, returning sum of all ints
#!/usr/bin/env python
def add_ints(*args):
return_sum = 0
for i in args:
if type(i) in [list, tuple]:
for list_key in i:
return_sum += add_ints(list_key)
if type(i) == dict:
@nerflad
nerflad / gpExtract.bat
Created July 1, 2016 18:31
Windows: backup Local Group Policy to directory
:: Requires Administrator
:: Copies entire GP object directory from system32 to current working directory
@echo off
setlocal EnableExtensions
setlocal
set "dirname=.\policyobjects - %DATE% %TIME%"
takeown /a /f %systemroot%\system32\grouppolicy /r /d y
xcopy %systemroot%\system32\grouppolicy "%dirname%" /s /h /i /y
@nerflad
nerflad / get-wmic-time.bat
Created July 2, 2016 19:35
Windows: Get fancy formatted time from WMIC if you don't have access to Command Extensions (for native %date% and %time%)
:: This is not mine!
:: This is almost verbatim from an answer on stack exchange!
@echo off
setlocal EnableDelayedExpansion
setlocal
:getTime
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do (
set "dt=%%a"
@nerflad
nerflad / readCfgs.bat
Created July 2, 2016 21:16
Read all .cfg files in cwd with nested FOR loop
@echo off
:readCfgs
for %%A in (%~dp0*.cfg) do (
for /f %%B in (%%A) do (
set "varName=%%~nA"
set "!varName!="
set "!varName!=%%B"
)
)
goto :EOF
@nerflad
nerflad / deleteself.bat
Created July 14, 2016 17:01
Self Deleting Batch Script
:: Delete self, handy for scripts you need manually
:: copy and deploy to lots of machines
:: Pretty sure I stole this from SS64.
set "batchPath=%~0"
echo Set objFSO = CreateObject( "Scripting.FileSystemObject" ) > "%~dp0temp.vbs"
echo objFSO.DeleteFile( "!batchPath!" ) >> "%~dp0temp.vbs"
echo objFSO.DeleteFile WScript.ScriptFullName >> "%~dp0temp.vbs"
echo WScript.Quit >> "%~dp0temp.vbs"
"%~dp0temp.vbs
#!/usr/bin/fish
set currentbranch (git branch | awk '{print $2}' | grep -v -e '^$');
set otherbranches (git branch | awk '{print $1}' | grep -v -e '\*');
git pull;
for i in $otherbranches
git checkout $i
@nerflad
nerflad / constructuloidulous.py
Last active January 18, 2017 23:34
Simple example class in Python to demonstrate a constructor to a friend
class Person(object):
alive = True
def __init__(self, name, height):
self.name = name
self.height = height
def sayname(self):
print("Hi, name is ", self.name, " and I am ", self.height, " feet tall!")