Skip to content
/ scrap Public
forked from shawwn/scrap

Nearly a thousand bash and python scripts I've written over the years.

Notifications You must be signed in to change notification settings

ramsrib/scrap

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

685 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

scrap

Various scripts I've written over the years.

installation

git clone https://github.com/shawwn/scrap ~/scrap

# add scrap to PATH
echo 'export PATH="${HOME}/scrap:${PATH}"' >> ~/.bashrc
echo 'export PATH="${HOME}/scrap:${PATH}"' >> ~/.zshrc

examples

mkbin <name>

Make a new scrap script with a predefined bash template. If <name> already exists, the script is edited instead. If you save an empty file, the script is deleted.

mkpy <name>

Make a new scrap script with a predefined python template. If <name> already exists, the script is edited instead. If you save an empty file, the script is deleted.

math <expr>

Evaluate math.

$ math 60*60
3600
$ math 2^64/2^60
16.0000
$ math '2^64/2^(60+1)'
8.0000

narrow [filter1] [filter2] ....

Filter lines by each filter.

A filter is a python regex. NOTE: You must explicitly put whitespace within [ ].

For each line, the line is discarded unless it matches the filter.

If a filter starts with !, all lines are kept except those matching the filter.

The general idea is that you can do <some command> | narrow foo to see all lines containing foo, and <some command> | narrow foo bar to see all lines containing foo and bar, and so on.

This is a very easy way of trimming down output to exactly what you care about.

$ ls -1 /
bin
boot
dev
etc
home
init
lib
lib64
media
mnt
opt
proc
root
run
sbin
snap
srv
sys
tmp
usr
var
$ ls -1 / | narrow lib
lib
lib64
$ ls -1 / | narrow '^[bdl]'
bin
boot
dev
lib
lib64
$ ls -1 / | narrow 'bin|lib|tmp'
bin
lib
lib64
sbin
tmp
$ ls -1 / | narrow 'bin|lib|tmp' 'ib|bi'
bin
lib
lib64
$ ls -1 / | narrow 'bin|lib|tmp' 'ib|bi' "\!lib"
bin

llbin [filter1] [filter2] ...

List all scrap scripts.

# all the scrap scripts containing `mk`
$ llbin mk
mkalias
mkalias2
mkbash
mkbin
mkbranch
mkbranch-local
mkcd
mkmod
mkpy
mkpy-basic
# all the scrap scripts containing `git`
$ llbin git
git-3way
git-3way-rm
git-alldiff
git-branch-current
git-branch-rm
git-branch-rm-remote
git-checkout
git-clone-from-commit
git-commit
git-commit-message-last
git-commit-undo
git-diff-show-all
git-diff-show-all-single-commit
git-discard
git-keep-ours
git-keep-theirs
git-key
git-list-files
git-list-objects
git-log
git-log2
git-merge
git-merge-to
git-merge-to-master
git-nuke
git-nuke-commits
git-patch-apply
git-patch-from-commit
git-patch-from-last-commit
git-pr-fetch
git-pr-fetchall
git-repush
git-revert
git-review-all-changes-just-merged
git-status
git-stdout
git-unpush-last-commit
git-unstage
github-branch-create
github-branch-create-local
github-clone-and-add-remote
github-image-host
github-image-hostall
github-shorten-url
github-subtree-create
github-subtree-pull

Complete listing of all scripts

$ llbin
1st
2nd
3rd
ack2
agc
agcolor
ag-filenames-only
apps
args
b64dec
b64enc
backupbin
backupdir
beautify
beautify-portscan
beyond-compare
beyond-compare-wait
bin-bin
bindir
bindirs
bin-edit
bin-find
bin-find1
bin-find-exact
binlink
bin-path
bin-paths
bins
branch
brewpath
brews
brewurl
bytes2human
cant-eject
ccode
cdbin
cdbranch
cdmvim
changedir
cleardns
cls
cmd
cmd2
codefiles-c
codegrep
coff
collapse-blanks
cols
columnize
comparefiles
contains
cpbin
cpcmd
cpp-classes
cputemp
ctrlc
ctrlctrim
ctrlv
cuMSP
curl-get-with-headers
curlquote
cut-before
ddgui
ddpv
decrypt
dlls
duh
eachline
eachnull
echoargs
echo-stdin
edbin
edit
edit2
editft
encrypt
enum-hashes
exist
exists
extract-urls
exts
fileext
fileexts
fileinfo-check-arch
files
filesize
findf
first
firstlast
first
flags
foo
foreach-line
fromhex
fromhex2
ft
ga
gac
gacm
gc
gca
gcgh
gcm
gco
gcu
gd
gd1
gdn
gdns
gh
ghc
ghclone
git-3way
git-3way-rm
git-alldiff
git-branch-current
git-branch-rm
git-branch-rm-remote
git-checkout
git-clone-from-commit
git-commit
git-commit-message-last
git-commit-undo
git-diff-show-all
git-diff-show-all-single-commit
git-discard
github-branch-create
github-branch-create-local
github-clone-and-add-remote
github-image-host
github-image-hostall
github-shorten-url
github-subtree-create
github-subtree-pull
git-keep-ours
git-keep-theirs
git-key
git-list-files
git-list-objects
git-log
git-log2
git-merge
git-merge-to
git-merge-to-master
git-nuke
git-nuke-commits
git-patch-apply
git-patch-from-commit
git-patch-from-last-commit
git-pr-fetch
git-pr-fetchall
git-repush
git-revert
git-review-all-changes-just-merged
git-status
git-stdout
git-unpush-last-commit
git-unstage
gl
gl1
gm
gp
gpul
greps
gs
gs2
gsa
gu
gzip-size
hasbang
hashing
hex2ip
hfsslower.d
hs
http-beautify
http-body
http-headers
human2bytes
humansizesort
icgrep
igrep
infopystdin
initialtext
install-homebrew
iosnoop-show-full-paths_but-only-shows-calls-to-open
ip2cidr
ips
irgrep
isort
iterm
joinlines
jslib
json-beautify
key2rsa
keygen
keys
kill-chrome-helpers
kill-tunnelblick
l
l1
l-1
l2
l3
l4
l5
lall
last
lastfirst
lib-changename
linecount
ll
llapp
llbin
llbranch
llcommit1
lld
llpaths
llpathst
llps
llrecent
llsize
llsortlast
lltar
lltime
lltree
lltype
llunpaths
locate-update
log-grep
lowercase
ls
ls1
lsdisk
lsn
lsusb
ltrim
lwrap
macbook-config-sleep-hibernate
macbook-config-sleep-normal
maclife.d
make-with
match
matchfiles
math
mdtool
merge
mergefiles
mergepython
mergeruby
mkalias
mkalias2
mkbash
mkbin
mkbranch
mkbranch-local
mkcd
mkmod
mkpy
mkpy-basic
month2num
mvbin
mvbranch
mvim
mvimc
mvimft
mvims
mysql-start
mysql-stop
narrow
natsort
nbytes
netinfo-arp
netinfo-arp-scan
netinfo-daemons
netinfo-netdiscover
netinfo-netstat
netinfo-netstat-tulpn
netinfo-nmap-scan-localnet
netinfo-pingsweep
netinfo-routes
netpen-fetch
netpen-find-interesting-files
netpen-getinfo
netpen-getinfo2
netpen-getinfo3
netpen-outdir
netpen-path
netscan
netview
newl
nlines
nocolor
normpath
npm-download-all-packages
nthcol
nthline
null
oauth
opencl-linklib
open-editor
openfirst
openvpn-fetch-client-files
osx-bouncing-icons-disable
osx-bouncing-icons-enable
osx-cpu-features
p'
packhex
parse-c
pastebin
patch-apply
patch-create
patch-integrate
pdfcat
phoenix-db-setup
phoenix-deps
phoenix-new
phoenix-start
pingsweep
pip-install-test
plistcat
plt-racket
portscan
portscan2
portscan3
portscan-quick
pos
postgres-initialize-database
postgres-start
postgres-stop
pq
print0
prjson
psfind
ps-find
psfocus
pskill
ps-offspring
psqlgetfield
psqlsetfield
ptyfix
pubkey
pwgen
pws
py-example-watchdog
pyinst
pypitest-register
pypitest-upload
python-build-ext
pyval
quote
quoten
quotent
ramdisk-create
rand-bday
randint
ratio
re
re[
re[]+
readvar
recgrep
recvchars
recvfile
recvsh
recvtar
redis-start
reminder
rename
replace
replace2
replace-in-files
replace_n_rn
report-gen
resub
revbytes
reverse
revlines
revstr
rgrep
rll
rls
rmblanks
rmbranch
rmbranch-remote
rmrf
routeof
routes
rpi-default-led
rpi-deploy
rtrim
run
sack
sackvim
sag
scrap-setup-ubuntu
screenshot-firefox
sdcard-dd
sdcard-detect-disk
sdcard-write-freebsd
sdcard-write-kali
sendbackup
sendchars
sendfile
sendsh
sendsh2
sendtar
sendweb
sha1sum-recursive
sha256sums
simulavr_preprocess
skip-first-n-lines
skip-last-n-lines
skip-n-lines
sleepnow
snippet-array-loop-with-spaces
snippet-receive-and-repass-quoted-args
snippet-receive-and-repass-quoted-args2
snippet-special-params
socatchk
sort-cppfiles
sortuniq
splitby
splitext
sp-notes
spotlight-rebuild
sqlmap
srm1
srm1z
srmz
sshfwd
sshproxy
ssh-rpi
ssh-sync
sshtar
strace-osx
sub
sub1
suball
sub-all
tcpview
td
tmpbin
tohex
trim
trimlines
tsnap
ttyMSP
tweets
udisk
unbuffer
unescape
unix2dos
unquote
urlavail
urldecode
urlencode
urlquote
urlunquote
utcnow
utcstamp
utcstamp2time
utctime2stamp
viewbytes
viewchars
viewfile
vimterm
vim-tokenize
vinoinfo
vs
watcher
wgetfiles
where
wheredir
whichapp
xbuild-both
xbuild-debug
xbuild-release
zopped

About

Nearly a thousand bash and python scripts I've written over the years.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 55.6%
  • Shell 26.1%
  • Perl 18.0%
  • Other 0.3%