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パディングはどうすればいいんだろう?