6

「date」コマンドしかインストールされていない場合、MSYS+MinGW for Windows でタイムゾーンを変更するにはどうすればよいですか? ここには「tzconfig」または「tzselect」はありません。

$date --set="Apr 01 23:08 UTC+04:00" を試すと、19:08 GMT+0 の結果が表示されます。

「make」コマンドは、将来変更されるファイルに関するエラーを常に表示するため、これは私にとって非常に重要です。

4

4 に答える 4

12

私も同じ問題を抱えていました。私のタイムゾーンはCET(GMT + 1)です。

次のように、環境変数TZを設定してこれを修正しました。

export TZ=CET-1CEST

私が持っていた変数を設定する前に:

(プロンプトを実行します)

c:\>time
Huidige tijd: 17:08:32,40

(msysシェル)

$ date
Mon Oct 25 15:08:54 GMT 2010

TZ = CET-1CESTを設定すると、次のようになります。

(プロンプトを実行します)

c:\>time
Huidige tijd: 17:14:30,80

(msysシェル)

$ export TZ=CET-1CEST
$ date
Mon Oct 25 17:15:05 CEST 2010

この変数のフィールドは次のとおりです。

  • CET:タイムゾーンの名前
  • +/- x:タイムゾーンからGMTまでの時間単位のオフセット(私の例では、GMTはCETで1時間遅れます)
  • CEST:夏時間が有効になっているタイムゾーンの名前
  • (オプション)+/- y:夏時間(DST)のタイムゾーンからGMTまでの時間単位のオフセット。デフォルトは時間ですので、スキップできます。

1番目と3番目のフィールドは、日付文字列に表示するためだけに使用されていることに注意してください。必要に応じて、FOOとBARに設定することもできます。実際の時間変更を行うのは、2番目(およびオプションで4番目)のフィールドです。

このパラメーターは、DSTの開始時刻と終了時刻を定義するために、さらに多くのフィールドを使用できます。詳細については、こちらのページをご覧ください。

于 2010-10-25T15:24:46.797 に答える
0

これは私のPCからコピー&ペーストされています。Windowsのcmd.exeプロンプトを起動します-次に:

d:\Users\NeilB>time
The current time is: 20:59:27.68
Enter the new time: 21:59

次に、MSYSbashシェルに切り替えます。

[neilb@GONERIL NeilB]$ date
Thu Apr  1 21:59:31 GMTDT 2010

時間が変わったことに注意してください。これは、コントロールパネルを使用しても機能します。

于 2010-04-01T20:01:13.550 に答える
0

同じタイムゾーンの問題に遭遇しました。私のベストショットは次を使用することでした: date --date="4 hours ago" 、ここで -4h は私のタイムゾーンです...自分のものにタイムスタンプを付けるのはうまくいきましたが、それが何かの助けになるかどうかはわかりません"作る"...

于 2010-04-29T02:47:34.227 に答える
0

記録として、Geert からのすばらしい回答に加えて、フランスに住んでいる ~/.bash_profile に追加したものを次に示します。

export TZ=CET-1CEST-2

そして、それはうまく機能します。

于 2011-06-21T14:30:42.840 に答える