Shell

ShellからYYYYMMDDを得る

date "+%Y%m%d"

ファイルのバックアップへの応用

cp -pi /etc/rc.conf /etc/rc.conf.`date "+%Y%m%d"`

とすると /etc/rc.conf.20110901 にバックアップができる。

現在の時間をUNIXTIMEで表示

各プラットフォーム共通:
date +%s
1316137452

任意の時間をUNIXTIMEにする

FreeBSD:
調べてない
Linux:
date +%s --date "2011-09-01 00:00"
1314802800

UNIXタイムを可読性の高い形にする

perl -e 'print (scalar(localtime("1314802800")))'
Thu Sep  1 00:00:00 2011

bashの数値for文

$ declare -i i=0; for (( i==0; i < 10 ; i++ )); do echo -n $i ;done
0123456789

リダイレクト

以下の通り

  • |:パイプ
  • >:標準出力をファイルに
  • <:標準出力をファイルから
  • >>:標準出力をファイルに追加
  • <>:ファイルを標準入出力に
  • 2>:エラー出力
  • 2<:2の入力
  • 2>&:2への複製
  • 2<&:2への複製

MACアドレスの2進数化

echo "ibase=16; obase=2; " `echo "00:11:22:33:44:55" | tr -d ":" | tr "[:lower:]" "[:upper:]" ` | bc
1000100100010001100110100010001010101
0パディングはどうすればいいんだろう?