
[code]

    SHELL=/bin/sh
    RBENV=/home/ec2-user/.rbenv/bin/rbenv
    SCRIPT_DIR=/home/ec2-user/git/user_profiles
    LOG_ENV=production
    
    55 * * * * ec2-user cd $SCRIPT_DIR; $RBENV exec bundle exec ruby import_users_into_mysql.rb $LOG_ENV >> logs/users_import.log 2>&1
    15 13 * * * ec2-user cd $SCRIPT_DIR; $RBENV exec bundle exec ruby import_play_info_into_mysql.rb $LOG_ENV $(date "+%Y%m%d" -d "1 month ago") home_work >> logs/play_info_import.log 2>&1
    
[/code]

このような cron file を書いたところ毎時 55 分の cron は正常に動いたのですが  
２行目の日時の cron がうまく動きません

cron のログを見ると

(ec2-user) CMD (cd $SCRIPT_DIR; $RBENV exec bundle exec ruby
import_play_info_into_mysql.rb $LOG_ENV $(date "+)

となっていてどうも `$(date "+%Y%m%d" -d "1 month ago")` の部分がうまく認識されずコマンドが途切れてしまっているようです  
どう修正すればいいのでしょうか

中のコマンド自体は cron 実行サーバー該当ユーザで実行したところ

[code]

    $ date "+%Y%m%d" -d "1 month ago"
    20191104
    
[/code]

と正常に動作します


CC BY-SA 4.0
2019-12-04T04:04:09.623
61078
2019-12-04T04:04:09.623
question
cron
cron ファイルでのインラインコマンドの書き方