Intereting Posts
Помогите установить в Lubuntu? Как продемонстрировать недопустимые предположения PID? Почему я не могу найти (используя какой) usermod в качестве обычного пользователя в RHEL7 Сервер nas4free не может получить доступ к локальной сети Авторизация в SSH-соединении в OneLine Как написать файл systemd .service с запущенным systemd-tmpfiles Как узнать, сколько памяти занимает программа Почему этот двоичный файл передается поверх «ssh -t», который изменяется? Рекурсивная загрузка всех файлов из дочернего каталога веб-сайта с помощью wget netconsole префикс каждого сообщения Открытие текущего каталога из терминала в браузер файлов? Awk: изменить строки в зависимости от следующего Где я могу найти документацию по синтаксису сценария оболочки для использования регулярного выражения внутри переменной? Скопировать папки сразу выключение сервера ubuntu через 2 дня в полночь

Как изменить дату и время последней модификации, независимо от часового пояса и летнего времени?

У меня есть два файла, и мне нужно изменить их дату последней модификации: оба должны быть полночь, одна – 25 июня, а вторая – 25 ноября. В основном это:

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

Наш часовой пояс на сервере – «Европа / Мадрид», поэтому мы наслаждаемся летним временем: мы находимся в UTC + 1 в течение зимы и UTC + 2 в течение лета. Это означает, что если я сейчас запустил приведенные выше команды, они установили дату зимнего файла правильно, но лето-файл на час раньше: 24 июня 23:00. Если бы я управлял ими в течение лета, я думаю, что летний файл будет одним ОК, а другой будет 1:00 вместо 0:00.

После небольшого количества поисковых запросов и немного больше проб и ошибок, я придумал это:

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

Который правильно установил дату обоих файлов в 0:00 по назначению. Проблема в том, что … Я действительно не знаю, что я здесь делаю. Изменение часового пояса на ZZZ-1 , из-за … магии? Или … это -1, потому что мы сейчас находимся в UTC + 1? В марте следующего года, когда мы перейдем на DST, наш сервер будет на 2 часа раньше UTC вместо 1. Должен ли я использовать вместо этого ZZZ-2 , или ZZZ-1 все равно будет в порядке? (Я бы изменил дату сервера и просто попробовал себя, но мне не разрешено это делать, это сломает несколько вещей).

Если мне понадобится ZZZ-2 в течение лета … есть ли другое выражение, то я могу установить TZ= вместо этого, чтобы мой контакт работал нормально круглый год и для любой заданной даты? Я пробовал с GMT , UTC и UTC0 , никто из них не работал (все они установили мой летний файл до 1:00).

Команды генерируются программно (в Siebel CRM), я думаю, я мог бы проверить текущую дату и установить TZ=ZZZ-1 или TZ=ZZZ-2 мере необходимости ( если необходимо), но я предпочел бы иметь только одно выражение.

Также обратите внимание, что на нашем сервере работает Solaris 10, если это имеет значение. Обычно это происходит …