タイムゾーンと夏時間に関係なく、最後に変更された日時を変更するにはどうすればよいですか?

タイムゾーンと夏時間に関係なく、最後に変更された日時を変更するにはどうすればよいですか?

2つのファイルがあり、最後の変更日を変更する必要があります。どちらも真夜中でなければならず、1つは6月25日、もう1つは11月25日です。基本的には次のようになります。

touch -cmt 201606242359.60 summer-file
touch -cmt 201611242359.60 winter-file

サーバータイムゾーンは「Europe/Madrid」なので楽しむ夏時間:冬にはUTC + 1が使用され、夏にはUTC + 2が使用されます。つまり、上記のコマンドを実行すると、次のように設定されます。冬の記録保管所日付は正確ですが夏の記録保管所1時間前:6月24日23:00。夏に着てほしいです。夏の記録保管所一つは大丈夫で、もう一つは0時ではなく1時です。

後ろにGoogleを試してください。より多くの試行錯誤の後、私は次の結論を下しました。

TZ=ZZZ-1 touch -cmt 201606242359.60 summer-file
TZ=ZZZ-1 touch -cmt 201611242359.60 winter-file

予想どおり、両方のファイルの日付を0:00に正しく設定します。問題は…私がここで何をしているのか本当にわかりません。タイムゾーンをに変更してくださいZZZ-1。なぜなら…魔法?それとも…現在UTC + 1なので-1ですか?来年3月にDSTに切り替えると、サーバーはUTCよりも1時間ではなく2時間高速になります。その時間を使うべきでしょうかZZZ-2、それともそれでしょうかZZZ-1? (サーバー日付を変更して自分で試してみましたが、そうしないで何か問題が発生することがあります。)

夏に必要な場合...一年中希望の日に私のタッチが機能するようにZZZ-2設定できる別の表現はありますか?TZ=私は以前試したことがありますGMTUTC そしてUTC0、それらのどれも働かなかった(彼らはすべて私の夏のプロフィールを1:00に設定しました)。

コマンドはプログラム的に(Siebel CRMで)生成され、現在の日付を確認して設定するTZ=ZZZ-1か、TZ=ZZZ-2必要に応じて設定できると思いました(もし必要)、しかし私はそれを表現する方法が1つだけでいいと思います。

また、違いがある場合に備えて、当社サーバーはSolaris 10を実行していることをご参照ください。それは一般的に...

関連情報