如何鼓励Windows管理员学习脚本? [关闭]

Modified on: Tue, 12 Nov 2019 03:00:03 +0800

当我在第一份工作中担任管理员时,我对使用Windows服务器的管理流程是一系列点击操作感到沮丧;我们永远无法将效率水平与具有一组shell脚本的Unix服务器相匹配,以自动完成大量工作。我很快就读到了关于WSH和ADSI的信息,并且没有浪费时间了解我的自动化程度能够通过脚本实现。

但是存在一个巨大的问题 - 我的Windows同事几乎都没有真正对学习脚本感兴趣。他们似乎对手动点击鼠标的工作感到满意,并且对于使用脚本代表他们进行工作的前景并不感到兴奋。尽管效率明显提高,但我努力说服他们学习脚本技能。之后我离开了那份工作,以寻求全职的软件开发生涯。

在各种环境和不同客户中工作近十年,我仍然遇到主要拥有这种一般“情绪”的Windows管理员,他们会尽可能避免编写脚本。尽管可访问性越来越高,但Windows服务器技术正在为脚本和自动化开放。我几乎可以肯定大多数管理员都是管理员,因为他们绝对讨厌执行任何类型的编程工作。有哪些方法可以鼓励和激励管理员,从长远来看,脚本可以真正帮助他们?

作者:,community wiki,8 revs, 5 users 50%
icelava

最佳答案

作为Unix和Windows管理员,他做了很多很多的Unix脚本,几乎没有Windows脚本,我会说这部分是由于Windows脚本实用程序和API令人难以置信的尴尬,在Windows机器上远程运行事物的难度(可能是非显而易见性更好)。

我的意思是,WTF是这个吗?

Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

我认为部分问题是一个API。在Unix下,管理员主要编写他们已经使用的命令行实用程序的自动化脚本。在Windows下,您必须在每个级别使用不熟悉的API。例如,“冒充”是什么意思?这对于Unix管理员来说是一个微不足道的概念,他可能会使用sudo和su并且已经熟悉setuid脚本。但Windows管理员不太可能熟悉其中任何一个;他们可能知道“runas”(或等效的GUI选项),但当他们需要管理员时,他们更有可能以管理员身份登录。

Windows中的脚本编写文档非常糟糕。首先,它比脚本更“解释语言”,因为它们使用的是(不熟悉的)API而不是他们已经熟悉的命令。但我认为我从来没有在微软的文档中找到任何有用的东西,而这些文档并没有找到那些已经做了我想要的东西的人,这些东西指向了正确的方向。似乎没有任何地方可以列出你可以做的事情。这就像你必须熟悉Windows内部才能做最基本的事情。

并非Unix脚本通常不像线路噪声。但Unix管理员可以从一个脚本开始,该脚本除了运行他已经知道的简单命令外什么也不做。 (“我总是必须连续运行这三个命令。如果我只是将它们放在一个文件中,我可以在一个命令中完成它!”)然后他可以随后进展,因为他对这种情况感到满意。相比之下,管理员无法编写“以管理员身份登录服务器”的脚本;单击“开始”→“设置”→“控制面板”;双击“系统”;单击“计算机名”选项卡;等等。是的,他试图去的地方可能是通过某个地方的API提供的,但是他没有办法逐步找到它。

因此,要回答“我们如何才能让Windows管理员更多地编写脚本?”这个问题,答案是,让脚本编写更不陌生。怎么做,我不知道。

老实说,答案在微软手中。他们没有理由不能使用命令行实用程序来完成通过GUI完成的所有操作。 (现在实际上有很多它们,但它们没有被广告,它们的文档记录很差,并且它们不一致。)也没有理由在GUI中没有一些关于什么的暗示那个按钮实际上。有一个工具提示,显示正在修改的API对象。或者在“帮助”窗口中记录它。

将屏幕用户屏蔽在内部是没有问题的,但是Windows似乎不顾一切地主动隐藏那些内部,甚至是那些想要找到它们的人。

作者:,wfaulk

相关问答

添加新评论