特定の日時にコマンドが発行されるように登録するatコマンドですが、環境によってはこのコマンドが使用できないことがあります。
特定のユーザでしか実行できないように制御することができたり、OSによってはatコマンドで登録できない仕様(バグ?)があったりするためです。
この場合、以下のようなループ処理をワンライナーかつバックグラウンドで使用することで、atコマンドと同じようなことができるようになります。
・20:00に/home/hoge/test.txt(空ファイル)を作成するように登録する例
#> (TIME=`date "+%H%M"; while[${TIME} -lt 2000]; do sleep 60; TIME=`date "+%H%M"; done; touch /home/hoge/test.txt) &