Skip to content

Instantly share code, notes, and snippets.

View kawaz's full-sized avatar
🏠
Working from home

Yoshiaki Kawazu kawaz

🏠
Working from home
View GitHub Profile
@kawaz
kawaz / cd.sh
Created August 6, 2012 05:11
cdにディレクトリ以外のパスを渡してもいい感じにしてくれるようにする
#!/bin/sh
function cd() {
if [ -e "$1" -a ! -d "$1" ]; then
builtin cd "`dirname "$1"`"
else
builtin cd "$@"
fi
}
@kawaz
kawaz / choose_random_file.sh
Created October 5, 2012 17:23
カレントディレクトリからランダムに一つのファイル名を出力するbashスクリプト
#!/bin/sh
files=(.[^.]* *)
echo ${files[$RANDOM%${#files[@]}]}
@kawaz
kawaz / gist:3924722
Last active October 11, 2015 21:48
Macメモ

インストールしたもの

  • BeterTouchTools
  • Google Chrome
  • Google日本語入力
  • Dropbox
  • Firefox
  • Evernote
  • Skype
  • XCode, XCode Command Line Tools
  • Homebrew
@kawaz
kawaz / gmail.sh
Last active March 16, 2020 00:34
gmailでメール送信するシェルスクリプト
#!/bin/bash
user="example@gmail.com"
pass="yourpassword"
to="friend@example.com"
( sleep 1
echo "EHLO `hostname`"
sleep 1
echo "AUTH PLAIN $(echo -en "$user\0$user\0$pass" | base64)"
sleep 1
@kawaz
kawaz / コンパイルのみ
Created December 19, 2012 03:13
http://dev.classmethod.jp/server-side/language/node-bench-js-template-engine/ で行われてたベンチマークをコンパイルとレンダリングに分けてみた。 ベンチに使った修正版のコードはこれ> https://github.com/kawaz/bench-node-template-engines
Please be patient.
{ http_parser: '1.0',
node: '0.8.14',
v8: '3.11.10.25',
ares: '1.7.5-DEV',
uv: '0.8',
zlib: '1.2.3',
openssl: '1.0.0f' }
Scores: (bigger is better)
@kawaz
kawaz / format_table.awk
Created February 8, 2013 02:30
列幅がバラバラなテキストを良い感じに見やすく整形してくれるawkスクリプト。
#!/bin/awk -f
BEGIN {
_sep = sep ? sep : " "
}
{
split($0, cols)
for(i=1; i<=length(cols); i++) {
col_size[i] = max(col_size[i], length(cols[i]))
}
@kawaz
kawaz / telnet 80
Created February 8, 2013 07:20
お名前COMのVPSが妖しい…。
GET / HTTP/1.0
HTTP/1.0 200 OK
Connection: Close
Pragma: no-cache
cache-control: no-cache
Refresh: 0.1
Content-Type: text/html; charset=iso-8859-1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd">
<!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
@kawaz
kawaz / tmux-color256.sh
Last active August 27, 2020 06:31
これはtmuxの色指定で使う256カラーの見本を表示するスクリプトです。tmuxの色指定方法は default, 色名, colour255, '#ffffff' の形が使えます。
#!/bin/bash
function echo_color() {
local colors=(black red green yellow blue magenta cyan white brightblack brightred brightgreen brightyellow brightblue brightmagenta brightcyan brightwhite)
local fg="\e[38;5;" bg="\e[48;5;" rs="\e[0m"
local color=$1; shift
local n=$(printf %3d $color) n2=""
if [[ -n ${colors[$color]} ]]; then
n2=" $(printf %-13s ${colors[$color]})"
fi
for arg in "$@";do
@kawaz
kawaz / seal-crontab-r.sh
Created March 15, 2013 16:56
crontab -r で r は e の隣のキーだから危険ってやつ。実際のところ -r に打ち間違えたことは無いんだけど保険としてこんなスクリプトをいつも使ってる。
# save /etc/profile.d/seal-crontab-r.sh or append to ~/.bashrc
# crontab -r を封印する
function crontab() {
local opt
for opt in "$@"; do
if [[ "$opt" == "-r" ]]; then
echo '-r is sealed!'
return 1
fi
@kawaz
kawaz / calc-aws-az-hash.sh
Last active December 20, 2015 08:49
複数アカウントのAZ名の対応を調査する
#!/bin/bash
ec2-describe-regions |
while read dummy region dummy; do
for az in a b c d; do
history="$(ec2-describe-spot-price-history \
--region $region \
-s "$(date -u -d "2 day ago" +%Y-%m-%dT00:00:00)" \
-e "$(date -u -d "1 day ago" +%Y-%m-%dT00:00:00)" \
-a $region$az 2>/dev/null | sed -e s/$region$az// | sort
)"