甘ちゃんSEの自己変革ブログ

1度もサービスを作ったことのない甘ちゃんがこのブログを通じて勉強したことや作ったものを自己発信していきます。

ls コマンドラインからとcrontabでのshellからだと出力結果違う・・・

いやーこれは想定外。

shellで特定ディレクトリ内の最新ファイル名を取得したくて、

ls -lt /xxx/hogehoge.*.gz | head -n 1 | gawk '{print $10}'

コマンドラインからだとファイル名出力できたけど、
shellをcronから動かしたら出力できない、、

比較してみたら、、、

コマンドライン

ls -lt /xxx/hogehoge.*.gz | head -n 1
-rw-r--r-- 1 user group 0  3月 14 16:03 2014 /xxx/hogehoge.2014031409.gz

■crontab

TEST=`ls -lt /xxx/hogehoge.*.gz | head -n 1`
echo ${TEST}
↓↓↓
-rw-r--r-- 1 user group 0  Mar 14 16:03 /xxx/hogehoge.2014031409.gz

うん、crontabだと「年(2014)」が出力されてないね。
ややこしや。