2

Python スクリプトの単体テストを行っており、月の異なる日にスクリプトの実行をシミュレートしたいと考えています。

コマンドラインからスクリプトを起動するときに日付/時刻を設定する方法はありますか?

システムの日付/時刻を変更するアクセス権がなく、テストしたい日付でスクリプトをハッキングしたくない.

乾杯、 ドナル

4

3 に答える 3

6

解決策を見つけたので、faketime という Linux ツールを使用します。

[10:45:03] $ faketime '2008-12-24 08:15:42' /bin/date
Wed Dec 24 08:15:42 GMT 2008
于 2013-09-24T09:50:10.670 に答える
1

おそらくLD_PRELOADのトリックでこれを達成するかもしれませんが、私の意見では、よりクリーンな解決策はdatetime.dateクラスをモックすることです。詳細については、この質問への回答を確認してください

于 2013-09-24T09:56:34.207 に答える
0

システム時間は変更されませんが、サブシェルでは異なるように、シェルで日付/時刻を直接設定する方法はないと思います

ただし、2つの解決策があります

1) TZ を使用できる限られた時間のセットの場合、例

TZ="GMT+6" date

2) Virtualbox のような VM で Python プログラムを実行し、システム時刻を設定します。VMで!

于 2013-09-24T09:50:55.683 に答える