Skip to content

Instantly share code, notes, and snippets.

#!/bin/bash -eu
# Dump all mysql databases in to separate files
# config
user=backup-db
dir=/home/backup-db/data/mysql
# runtime variables
ts=$(date +%Y%m%d%H%M%S)
dbs=$(sudo -i -u ${user} mysql -N -r -s -e 'SHOW DATABASES' | egrep -v '^information_schema|performance_schema$')
@chulkilee
chulkilee / add-eol.sh
Last active August 29, 2015 14:10
EOL
#!/bin/sh
sed -i '' -e '$a\' $1
@chulkilee
chulkilee / benchmark-md5.rb
Created October 2, 2014 19:27
Benchmark htauth gem to create md5 password
require 'benchmark'
require 'open3'
require 'htauth/md5'
SALT =
def run_open3
Open3.popen3('htpasswd', '-nbm', 'username', 'password') { | stdin, stdout, stderr | stdout.read }.strip.split(':')[1]
end
#!/bin/bash -eux
packer_ver=0.5.2
packer_prefix=/opt
packer_arch=linux_amd64
mkdir -p ${packer_prefix}/packer-${packer_ver}
cd ${packer_prefix}/packer-${packer_ver}
wget https://dl.bintray.com/mitchellh/packer/${packer_ver}_${packer_arch}.zip
unzip ${packer_ver}_${packer_arch}.zip && rm ${packer_ver}_${packer_arch}.zip
@chulkilee
chulkilee / find-duplicates.rb
Created March 6, 2014 19:07
Find duplicates in an array
require 'benchmark'
require 'set'
array_size = (ENV['TOTAL'] || 1_000_000).to_i
max_int = array_size / 5
array = 1.upto(array_size).map { rand(max_int) }
if ENV['CHECK']
@correct = array.group_by { |e| e }.select { |k, v| v.size > 1 }.keys.sort
end
#!/bin/bash
echo "# Update brew"
brew update && brew upgrade
brew doctor
brew cleanup
echo "# Update ruby gem"
gem update --system && gem update
#!/bin/sh
HAROOPAD_BIN=/opt/homebrew-cask/Caskroom/haroopad/0.10.0/haroopad.app/Contents/MacOS/node-webkit
cd $(dirname "$1")
ABS_PATH="$(pwd)/$(basename "$1")"
exec $HAROOPAD_BIN $ABS_PATH &> /dev/null &
#!/bin/bash
for man in 1 3 5 7; do
ln -sf /usr/local/lib/node_modules/npm/man/man${man}/* /usr/local/share/man/man${man}
done
ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
npm update npm -g
require 'benchmark'
big_number = 1_000_000
a = 1.upto big_number
b = big_number.upto big_number * 2
a_array = a.to_a
b_array = b.to_a
class MultipleEnumerator
include Enumerable
@chulkilee
chulkilee / open-git-remote-web
Created October 23, 2013 22:44
Open git remote in browser (mac)
#!/bin/bash
REMOTE=$1
if [[ -z "$REMOTE" ]] ; then
REMOTE='origin'
fi
PARSED=$(git remote -v | grep '(fetch)' | grep "^$REMOTE\t" | awk -F "\t| " '{print $2}' | sed -E -e 's/\.git$//' -e 's/^.+@//')
if [[ -z "$PARSED" ]] ; then
echo "Cannot find git remote: $REMOTE"