-
Notifications
You must be signed in to change notification settings - Fork 0
/
timezone_changer.py
62 lines (47 loc) · 1.39 KB
/
timezone_changer.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import subprocess
import platform
def clear_terminal():
subprocess.run(["clear"])
current_os = platform.system()
current_os = ""
if current_os == "Windows":
print(f"Script can't Run on {current_os}")
exit()
clear_terminal()
current_time_zone = (
subprocess.check_output(["timedatectl", "show", "-p", "Timezone"])
.decode()
.split("=")[-1]
)
# current_time_zone = "Timezone=Etc/UTC".split("=")[-1]
print(
f"Current time location: {current_time_zone}",
)
while True:
new_location = input(
"Enter new time location (ex: Asia/Tehran) (type 'n' to exit): "
)
clear_terminal()
if new_location.lower() == "n":
exit()
elif new_location == "":
clear_terminal()
continue
time_zone_list = tuple(
subprocess.check_output(["timedatectl", "list-timezones"]).decode().split("\n")
)
if new_location in time_zone_list:
clear_terminal()
break
else:
clear_terminal()
print("Time location is wrong.Try Again !")
are_you_sure = input(
f"Are you sure you want to change the time location to {new_location}? (y/n)"
)
clear_terminal()
if are_you_sure.lower() == "y":
subprocess.check_output(["timedatectl", "set-timezone", new_location])
print("Time location changed successfully!")
else:
print("Exiting script.")