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=
私は以前試したことがありますGMT
。UTC
そしてUTC0
、それらのどれも働かなかった(彼らはすべて私の夏のプロフィールを1:00に設定しました)。
コマンドはプログラム的に(Siebel CRMで)生成され、現在の日付を確認して設定するTZ=ZZZ-1
か、TZ=ZZZ-2
必要に応じて設定できると思いました(もし必要)、しかし私はそれを表現する方法が1つだけでいいと思います。
また、違いがある場合に備えて、当社サーバーはSolaris 10を実行していることをご参照ください。それは一般的に...