LOGファイルの日付が
Nov 8 10:10:10 ~
なんて事になってる場合、スクリプト無いでgrepしてひっかけたいのだが、dateコマンド(date '+%b %_d')で取得した日付を変数に突っ込むと
Nov 8 10:10:10 ~
なんて事になって、スペースが埋められてしまい比較が正常に行われない。
これは区切り文字がスペース(改行を含む)になっている為、2つ以上のスペースを1つにまとめてしまうのである。
解決方法としてはIFS(Internal Field Separator)の設定を変更して区切り文字を改行だけにしてしまう
IFS_BACKUP=$IFS IFS=$'\n'
CHECK=`date '+%b %_d'
echo ${CHECK}
IFS=$IFS_BACKUP
これで希望通り
Nov 8 10:10:10 ~
と表示される