欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

self service 脚本 修改时区 设置为 中国时区 美国时区 越南时区 我自己亲自做的 set_america_timezone_zhong 有大用 有大大用

#!/bin/bash
#
result=$(/usr/bin/osascript -e  "set buttonList to {\"中国 上海\", \"美国 加利福利亚\", \"越南 胡志明市\"}  
  set chosenItems to choose from list buttonList with title \"请选择按钮\" with prompt \"请从下列选项中选择一个:\" default items {\"中国 上海\"}
 if chosenItems is false then
      set chosenButton to \"\"
 else
   set chosenButton to item 1 of chosenItems
 end if
 return chosenButton ")
time_zone=$result
if [ -z $time_zone ];then
 (/usr/bin/osascript -e  "display dialog \"未修改时区!\" buttons {\"OK\"}   default button \"OK\"")
 exit 0
fi
if [ "${time_zone}" = "中国 上海" ];then
    sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    #会立即重置为零时区,重启才会生效变成/America/Los_Angeles时区,不会报错
    #sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime 与 sudo systemsetup -settimezone "America/Los_Angeles" 效果一样,但是后者会报错,但是实际上会产生更改时区的效果

    sudo defaults write /Library/Preferences/com.apple.timezone.auto Active -bool false
    sudo systemsetup -setusingnetworktime off
    sudo systemsetup -settimezone "Asia/Shanghai"
    (/usr/bin/osascript -e  "display dialog \"已改为中国时区  上海\" buttons {\"OK\"}   default button \"OK\"")
elif [ "${time_zone}" = "美国 加利福利亚" ];then
    sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
    #会立即重置为零时区,重启才会生效变成/America/Los_Angeles时区,不会报错
    #sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime 与 sudo systemsetup -settimezone "America/Los_Angeles" 效果一样,但是后者会报错,但是实际上会产生更改时区的效果

    sudo defaults write /Library/Preferences/com.apple.timezone.auto Active -bool false
    sudo systemsetup -setusingnetworktime off
    sudo systemsetup -settimezone "America/Los_Angeles"
    (/usr/bin/osascript -e  "display dialog \"已改为美国时区  加利福尼亚\" buttons {\"OK\"}   default button \"OK\"")
elif [ "${time_zone}" = "越南 胡志明市" ];then
    sudo ln -sf /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime
    #会立即重置为零时区,重启才会生效变成/America/Los_Angeles时区,不会报错
    #sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime 与 sudo systemsetup -settimezone "America/Los_Angeles" 效果一样,但是后者会报错,但是实际上会产生更改时区的效果

    sudo defaults write /Library/Preferences/com.apple.timezone.auto Active -bool false
    sudo systemsetup -setusingnetworktime off
    sudo systemsetup -settimezone "Asia/Ho_Chi_Minh"
    (/usr/bin/osascript -e  "display dialog \"已改为越南时区  胡志明市\" buttons {\"OK\"}   default button \"OK\"")
fi


普通分类: