在MDT (Microsoft Deployment Toolkit) 部署过程中,可以使用 Task Sequence 来自动化计算机名称的分配。下面是几种常见的方法

Posted suv789

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在MDT (Microsoft Deployment Toolkit) 部署过程中,可以使用 Task Sequence 来自动化计算机名称的分配。下面是几种常见的方法相关的知识,希望对你有一定的参考价值。

在 MDT (Microsoft Deployment Toolkit) 部署过程中,可以使用 Task Sequence 来自动化计算机名称的分配。下面是几种常见的方法:

  1. 使用 MDT 自带的“ZTIGather.wsf”脚本

MDT 自带了一个名为“ZTIGather.wsf”的 VBScript 脚本,用于在部署期间收集有关目标计算机的信息。可以使用该脚本来获取计算机的序列号、型号和制造商等信息,并将这些值存储在 MDT 中的自定义属性字段中,然后使用 Task Sequence 中的脚本来组合这些值以生成唯一的计算机名称。

以下是示例任务序列“CustomTaskSequence”中使用 ZTIGather.wsf 的脚本命令:

复制代码
cscript.exe "%deployroot%\\Scripts\\ZTIGather.wsf"
  1. 使用 MDT 中的“UUIDGEN.exe”

MDT 提供了一个命令行工具“UUIDGEN.exe”,可以生成随机的 UUID。可以在 Task Sequence 中添加该命令,并将其输出存储在 MDT 属性字段中以作为计算机名称的一部分。

以下是示例任务序列“CustomTaskSequence”中使用 UUIDGEN.exe 的脚本命令:

复制代码
set NewName=%SerialNumber%_%UUID%
  1. 使用 DHCP 服务器的“预分配”功能

在部署过程中,DHCP 服务器可将已知的 MAC 地址与预分配的 IP 地址进行匹配,并将与该计算机关联的名称返回给部署流程。可以根据计算机的位置、磁盘大小或其他属性来命名计算机,并由 DHCP 服务器分配相应的 IP 地址。

总之,MDT 提供了若干自动化计算机名称分配的方法,管理员可以根据实际需求和环境灵活选择并配置相应的脚本命令。这些方法能够大大减少手动操作,提高工作效率和精度。

如何在 R 中将山地标准时间 (MST) 转换为山地夏令时间 (MDT)

【中文标题】如何在 R 中将山地标准时间 (MST) 转换为山地夏令时间 (MDT)【英文标题】:How to convert Mountain Standard Time (MST) to Mountain Daylight Time (MDT) in R 【发布时间】:2020-02-04 06:52:04 【问题描述】:

我正在尝试将 datetime 变量从 MST 转换为 MDT。

我想要得到的是 datetime 的一个新变量,它反映了山区夏令时 (MDT)。

我不确定如何从这个问题开始。

我正在考虑首先使用 MST 时区强制原始日期时间,然后将其转换为 MDT,但是我不知道该怎么做。

更新:###############

经过一番挖掘,我发现原来的datetime 起源于UTC -07:00,这意味着它不反映夏令时。但是,我们需要 datetime 来遵循夏令时。

容易看出时间变化的数据:

df <- structure(list(datetime.char = c("2019-03-09 21:00", "2019-03-09 21:05", 
"2019-03-09 21:10", "2019-03-09 21:15", "2019-03-09 21:20", "2019-03-09 21:25", 
"2019-03-09 21:30", "2019-03-09 21:35", "2019-03-09 21:40", "2019-03-09 21:45", 
"2019-03-09 21:50", "2019-03-09 21:55", "2019-03-09 22:00", "2019-03-09 22:05", 
"2019-03-09 22:10", "2019-03-09 22:15", "2019-03-09 22:20", "2019-03-09 22:25", 
"2019-03-09 22:30", "2019-03-09 22:35", "2019-03-09 22:40", "2019-03-09 22:45", 
"2019-03-09 22:50", "2019-03-09 22:55", "2019-03-09 23:00", "2019-03-09 23:05", 
"2019-03-09 23:10", "2019-03-09 23:15", "2019-03-09 23:20", "2019-03-09 23:25", 
"2019-03-09 23:30", "2019-03-09 23:35", "2019-03-09 23:40", "2019-03-09 23:45", 
"2019-03-09 23:50", "2019-03-09 23:55", "2019-03-10 00:00", "2019-03-10 00:05", 
"2019-03-10 00:10", "2019-03-10 00:15", "2019-03-10 00:20", "2019-03-10 00:25", 
"2019-03-10 00:30", "2019-03-10 00:35", "2019-03-10 00:40", "2019-03-10 00:45", 
"2019-03-10 00:50", "2019-03-10 00:55", "2019-03-10 01:00", "2019-03-10 01:05", 
"2019-03-10 01:10", "2019-03-10 01:15", "2019-03-10 01:20", "2019-03-10 01:25", 
"2019-03-10 01:30", "2019-03-10 01:35", "2019-03-10 01:40", "2019-03-10 01:45", 
"2019-03-10 01:50", "2019-03-10 01:55", "2019-03-10 02:00", "2019-03-10 02:05", 
"2019-03-10 02:10", "2019-03-10 02:15", "2019-03-10 02:20", "2019-03-10 02:25", 
"2019-03-10 02:30", "2019-03-10 02:35", "2019-03-10 02:40", "2019-03-10 02:45", 
"2019-03-10 02:50", "2019-03-10 02:55", "2019-03-10 03:00", "2019-03-10 03:05", 
"2019-03-10 03:10", "2019-03-10 03:15", "2019-03-10 03:20", "2019-03-10 03:25", 
"2019-03-10 03:30", "2019-03-10 03:35", "2019-03-10 03:40", "2019-03-10 03:45", 
"2019-03-10 03:50", "2019-03-10 03:55", "2019-03-10 04:00")), class = c("spec_tbl_df", 
"tbl_df", "tbl", "data.frame"), row.names = c(NA, -85L), spec = structure(list(
    cols = list(datetime.char = structure(list(), class = c("collector_character", 
    "collector"))), default = structure(list(), class = c("collector_guess", 
    "collector")), skip = 1), class = "col_spec"))

这是我们使用@d.b 解决方案获得的结果的屏幕截图。但是它并不能完全提供预期的输出。

11 月月份时钟变化

这是 11 月的虚拟数据:

df <- structure(list(datetime.char = c("2017-11-04 21:00:00", "2017-11-04 21:05:00", 
"2017-11-04 21:10:00", "2017-11-04 21:15:00", "2017-11-04 21:20:00", 
"2017-11-04 21:25:00", "2017-11-04 21:30:00", "2017-11-04 21:35:00", 
"2017-11-04 21:40:00", "2017-11-04 21:45:00", "2017-11-04 21:50:00", 
"2017-11-04 21:55:00", "2017-11-04 22:00:00", "2017-11-04 22:05:00", 
"2017-11-04 22:10:00", "2017-11-04 22:15:00", "2017-11-04 22:20:00", 
"2017-11-04 22:25:00", "2017-11-04 22:30:00", "2017-11-04 22:35:00", 
"2017-11-04 22:40:00", "2017-11-04 22:45:00", "2017-11-04 22:50:00", 
"2017-11-04 22:55:00", "2017-11-04 23:00:00", "2017-11-04 23:05:00", 
"2017-11-04 23:10:00", "2017-11-04 23:15:00", "2017-11-04 23:20:00", 
"2017-11-04 23:25:00", "2017-11-04 23:30:00", "2017-11-04 23:35:00", 
"2017-11-04 23:40:00", "2017-11-04 23:45:00", "2017-11-04 23:50:00", 
"2017-11-04 23:55:00", "2017-11-05 00:00:00", "2017-11-05 00:05:00", 
"2017-11-05 00:10:00", "2017-11-05 00:15:00", "2017-11-05 00:20:00", 
"2017-11-05 00:25:00", "2017-11-05 00:30:00", "2017-11-05 00:35:00", 
"2017-11-05 00:40:00", "2017-11-05 00:45:00", "2017-11-05 00:50:00", 
"2017-11-05 00:55:00", "2017-11-05 01:00:00", "2017-11-05 01:00:00", 
"2017-11-05 01:05:00", "2017-11-05 01:05:00", "2017-11-05 01:10:00", 
"2017-11-05 01:10:00", "2017-11-05 01:15:00", "2017-11-05 01:15:00", 
"2017-11-05 01:20:00", "2017-11-05 01:20:00", "2017-11-05 01:25:00", 
"2017-11-05 01:25:00", "2017-11-05 01:30:00", "2017-11-05 01:30:00", 
"2017-11-05 01:35:00", "2017-11-05 01:35:00", "2017-11-05 01:40:00", 
"2017-11-05 01:40:00", "2017-11-05 01:45:00", "2017-11-05 01:45:00", 
"2017-11-05 01:50:00", "2017-11-05 01:50:00", "2017-11-05 01:55:00", 
"2017-11-05 01:55:00", "2017-11-05 02:00:00", "2017-11-05 02:05:00", 
"2017-11-05 02:10:00", "2017-11-05 02:15:00", "2017-11-05 02:20:00", 
"2017-11-05 02:25:00", "2017-11-05 02:30:00", "2017-11-05 02:35:00", 
"2017-11-05 02:40:00", "2017-11-05 02:45:00", "2017-11-05 02:50:00", 
"2017-11-05 02:55:00", "2017-11-05 03:00:00", "2017-11-05 03:05:00", 
"2017-11-05 03:10:00", "2017-11-05 03:15:00", "2017-11-05 03:20:00", 
"2017-11-05 03:25:00", "2017-11-05 03:30:00", "2017-11-05 03:35:00", 
"2017-11-05 03:40:00", "2017-11-05 03:45:00", "2017-11-05 03:50:00", 
"2017-11-05 03:55:00", "2017-11-05 04:00:00")), class = c("tbl_df", "tbl", "data.frame"), row.names = c(NA, 
-97L))

有趣的是,当我进行 3 月转换时,有一个明显的警告消息,提示 12 个条目无法解析。

df <- df %>% 
  mutate(datetime = ymd_hms(df$datetime.char, tz = "MST7MDT"))

如果我打印 df$date(请参阅 cmets 中的@d.b 代码),最终结果中的输出将保持 MST/MDT tz 并且在切换时可见:

[55] "2019-03-10 01:30:00 MST" "2019-03-10 01:35:00 MST" "2019-03-10 01:40:00 MST" "2019-03-10 01:45:00 MST" "2019-03-10 01:50:00 MST" "2019-03-10 01:55:00 MST"
[61] "2019-03-10 03:00:00 MDT" "2019-03-10 03:05:00 MDT" "2019-03-10 03:10:00 MDT" "2019-03-10 03:15:00 MDT" "2019-03-10 03:20:00 MDT" "2019-03-10 03:25:00 MDT"

这似乎不适用于 11 月的转化

【问题讨论】:

“它还没有时区属性”:不是真的,它有tzone="UTC",所以你的进程中有一些东西正在设置它。我不清楚时间是否是错误的 UTC 并且应该是美国山区,或者您是否认为无论一年中的哪一天都应该强制 MST 或 MDT。你能澄清一下吗? (顺便说一句:attr(df$original, "tzone") &lt;- "US/Mountain" 从 UTC 更改为山区时间。) 【参考方案1】:

anytime 的选项

library(anytime)
anytime("2018-03-12 02:03:12", tz = "MST7MDT")

【讨论】:

以上是关于在MDT (Microsoft Deployment Toolkit) 部署过程中,可以使用 Task Sequence 来自动化计算机名称的分配。下面是几种常见的方法的主要内容,如果未能解决你的问题,请参考以下文章

MDT (Microsoft Deployment Toolkit) 的功能大全,包括其主要部分和功能

在MDT (Microsoft Deployment Toolkit) 部署过程中,可以使用 Task Sequence 来自动化计算机名称的分配。下面是几种常见的方法

MDT (Microsoft Deployment Toolkit) 中的“SkipPage”命令用于在 Task Sequence 中控制不同界面的显示

ZTIGather.wsf 是 MDT (Microsoft Deployment Toolkit) 中的一个 VBScript 脚本,用于在部署过程中收集有关目标计算机硬件和软件环境的信息,并将这些

在Windows Server 2022中使用Microsoft Deployment Toolkit(MDT)时,可使用Rules(规则)文件来配置和自定义部署过程。以下是常见的Rules参数及其描

管理SCCM/MDT中的驱动分类