diff --git a/RTCSync.cli/Options/SetTimeOption.cs b/RTCSync.cli/Options/SetTimeOption.cs index 1ce95c7..f2c3d61 100644 --- a/RTCSync.cli/Options/SetTimeOption.cs +++ b/RTCSync.cli/Options/SetTimeOption.cs @@ -9,11 +9,10 @@ namespace RTCSync.Options; public class SetTimeOption : IOption { public string Description => - "Установка времени как в системе, на часах реального времени. Часы будут хранить локальное время (не UTC!). Можно сбросить время до минимального значения используя опцию \"0\"."; - + "Без опций устанавливается время как в системе, в локальный формат (не UTC). Дату и время можно задать вручную в кавычках. Опция \"0\" сбрасывает время на минимальное значение."; public List OptionNames => ["-s", "--set-time"]; - public string OptionValues => "[0]"; + public string OptionValues => "{\"HH:mm:ss dd.MM.yyyy\", 0}"; public void Execute(OptionArgs args) @@ -48,6 +47,22 @@ public class SetTimeOption : IOption DeviceWriters.SetTime(device, dt); } } + else if (value != null && value != "") + { + for (var i = 0; i < 3; i++) + { + try + { + var dt = DateTime.Parse(value); + DeviceWriters.SetTime(device, dt); + } + catch (Exception e) + { + Console.WriteLine(e); + throw; + } + } + } else { for (var i = 0; i < 3; i++)