Wie können Windows-Administratoren dazu ermutigt werden, Skripte aufzunehmen? [geschlossen]

26

Als ich in meinem ersten Job als Administrator gearbeitet habe, war ich frustriert, dass unsere Administrationsprozesse mit Windows-Servern eine Reihe von Mausklicks waren. Wir könnten niemals die Effizienz der Unix-Server erreichen, die über eine Gruppe von Shell-Skripten verfügen, um einen Großteil der Arbeit zu automatisieren. Bald las ich über WSH und ADSI und lernte schnell, wie viel Automatisierung ich mit Skripten erreichen konnte.

Es gab jedoch ein großes Problem - fast keiner meiner Windows-Kollegen war wirklich daran interessiert, Skripte zu lernen. Sie schienen mit den manuellen Mausklicks zufrieden zu sein und waren nie aufgeregt, Skripte zu verwenden, um die Arbeit für sie zu erledigen. Trotz der offensichtlichen Effizienzsteigerungen hatte ich Mühe, sie davon zu überzeugen, Skriptfähigkeiten zu erlernen. Ich habe diesen Job aufgegeben, um danach eine Vollzeitkarriere in der Softwareentwicklung anzustreben.

Fast ein Jahrzehnt lang arbeite ich in verschiedenen Umgebungen und bei verschiedenen Kunden. Trotzdem begegnen mir Windows-Administratoren, die hauptsächlich über diese allgemeine "Stimmung" verfügen und auf Skripterstellung möglichst verzichten. Trotz der zunehmenden Barrierefreiheit eröffnen sich Windows-Servertechnologien für die Skripterstellung und Automatisierung. Ich bin fast sicher, dass die Mehrheit der Administratoren Administratoren sind, gerade weil sie es absolut hassen , irgendwelche Programmieraufgaben auszuführen. Was sind einige Mittel, um Administratoren zu ermutigen und zu motivieren, dass Skripterstellung ihnen auf lange Sicht wirklich helfen kann?

icelava
quelle

Antworten:

21

Als Unix- und Windows-Administrator, der viel Unix-Scripting und fast kein Windows-Scripting ausführt, würde ich sagen, dass dies zum Teil auf die unglaubliche Unbeholfenheit der Windows-Scripting-Dienstprogramme und -APIs sowie auf die Schwierigkeit (möglicherweise nicht offensichtlich) zurückzuführen ist ein besseres Wort), Dinge remote auf einem Windows-Computer auszuführen.

Ich meine, WTF ist das?

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

Ein Teil des Problems, glaube ich, ist , dass es ist eine API. Unter Unix schreiben Administratoren hauptsächlich die Automatisierung von Befehlszeilenprogrammen, die sie bereits verwenden. Unter Windows müssen Sie diese API verwenden, die auf allen Ebenen unbekannt ist. Was bedeutet zum Beispiel "Imitieren"? Dies ist ein triviales Konzept für einen Unix-Administrator, der wahrscheinlich sudo und su verwendet und bereits mit setuid-Skripten vertraut ist. Es ist jedoch unwahrscheinlich, dass ein Windows-Administrator damit vertraut ist. Sie kennen sich vielleicht mit "Runas" (oder der entsprechenden GUI-Option) aus, aber es ist weitaus wahrscheinlicher, dass sie sich als Administrator anmelden, wenn sie etwas administratives tun müssen.

Und die Dokumentation zur Skripterstellung in Windows ist miserabel. Zum einen ist es weitaus mehr "interpretierte Sprache" als Skript, da sie eine (unbekannte) API verwenden und keine Befehle, mit denen sie bereits vertraut sind. Aber ich glaube nicht, dass ich jemals in der Dokumentation von Microsoft etwas Sinnvolles gefunden habe, das nicht dadurch entstanden ist, dass ich jemanden gefunden habe, der bereits etwas in der Nähe meines Wunsches getan hat, was mich in die richtige Richtung gelenkt hat. Nirgendwo scheint es eine Liste von Dingen zu geben, die man tun kann. Es ist, als müsste man bereits mit Windows-Interna vertraut sein, um die grundlegendsten Dinge zu tun.

Nicht, dass Unix-Skripte nicht oft wie Zeilenrauschen aussehen. Ein Unix-Administrator kann jedoch mit einem Skript beginnen, das nur einfache Befehle ausführt, die er bereits kennt. ("Ich muss diese drei Befehle immer nacheinander ausführen. Wenn ich sie nur in einer Datei zusammenstelle, kann ich sie mit einem Befehl ausführen!") Und dann kann er später fortfahren, wenn er sich mit der Situation vertraut macht. Im Gegensatz dazu hat ein Administrator keine Möglichkeit, das Skript "Als Administrator am Server anmelden; auf Start → Einstellungen → Systemsteuerung klicken; auf System doppelklicken; auf die Registerkarte Computername klicken; usw." auszuführen. Ja, was auch immer er erreichen wollte, wird wahrscheinlich irgendwo über eine API präsentiert, aber es gibt keine Möglichkeit für ihn, dies schrittweise herauszufinden.

Um die Frage zu beantworten, wie wir Windows-Administratoren dazu bringen können, mehr Skripte zu erstellen, lautet die Antwort: Machen Sie Skripte weniger fremd. Wie das geht, weiß ich nicht.

Ehrlich gesagt liegt die Antwort in den Händen von Microsoft. Es gibt keinen Grund, warum sie kein Befehlszeilendienstprogramm haben können, um alles zu erledigen, was über die GUI erledigt wird. (Es gibt tatsächlich viele von ihnen, aber sie werden nicht beworben, sie sind schlecht dokumentiert und sie sind inkonsistent.) Es gibt auch keinen Grund, warum es in der GUI keinen Hinweis darauf geben könnte, was dieser Knopf tut es tatsächlich. Haben Sie eine QuickInfo, die das API-Objekt zeigt, das geändert wird. Oder dokumentieren Sie es im Hilfefenster.

Es ist kein Problem, Benutzer vor Interna zu schützen, aber Windows scheint sich Mühe zu geben, diese Interna aktiv zu verbergen, selbst vor denen, die sie finden möchten.

wfaulk
quelle
16
Umgekehrt ist WTF das? ls -1 *old* | awk '{print "mv "$1" "$1}' | sed s/old/new/2 | sh
squillman
4
Guter Punkt auf der Tatsache, dass Windows Scripting - insbesondere VB - sehr umständlich ist, bis Sie anfangen, es herauszufinden. Die How-Well-Funktion von PowerShell hat viel dazu beigetragen, die Verwaltung zu vereinfachen. Es ist näher an Bash-Skripten als an VBS.
Zypher
2
Übrigens - nur Teufelsanwalt zu spielen :) WMI ist hässlich ...
squillman
1
LOL. Erstens, wer zum Teufel würde das tun? Zweitens ist der Administrator zumindest bereits mit vertraut ls. Drittens würde ich in Betracht ziehen sedund awkrelativ weit fortgeschritten sein, und zwar auf demselben Gebiet wie die Windows-APIs, über die ich spreche. Drittens, obwohl einige (viele) Unix-Scripting-Befehle komplex sind, müssen Sie dort nicht beginnen & mdash; Sie können einfache Dinge tun, beispielsweise eine Liste von Befehlen, mit denen Sie bereits vertraut sind & mdash; Wenn Sie dagegen mit Windows praktisch alles tun möchten, müssen Sie diese enorme Lernkurve zuerst skalieren. Aktualisierung der Antwort.
Wfaulk
3
Mir gefällt die Art und Weise, wie bei der Ausführung von Aufgaben in einer grafischen Benutzeroberfläche in Exchange 2007 nur ein PowerShell-Skript generiert und ausgeführt wird.
Richard Gadsden
8

Geben Sie ihnen eine Aufgabe, die wirklich nur über ein Skript erledigt werden kann - zum Beispiel musste ich einmal die Erstellung von Hunderten von Ordnern und benutzerdefinierten Berechtigungen für jeden Ordner per Skript ausführen und es musste TÄGLICH aktualisiert werden. Wenn sie dies manuell tun würden, wäre es ihre einzige Aufgabe. Das Skript, das unter anderem mit CACLS Berechtigungen basierend auf der Ausgabe einer begrenzten Textdatei zurücksetzte, brauchte ungefähr einen Tag, um zu perfektionieren (das Basisskript war in ungefähr einer Stunde fertig).

Wenn Sie anfangen zu sehen, was Sie mit Skripten anfangen können, kann dies ein enormer Gewinn sein.

Multiverse IT
quelle
+1 Großartiger Punkt, es gibt Dinge, die einfach nicht durch Zeigen und Klicken erledigt werden können.
Squillman
Ja, die Skripte, die ich damals geschrieben habe, haben die Erstellung von Verzeichnissen, DACLs-Berechtigungen, IIS-Site-Setups usw. automatisiert. Aber meine Kollegen waren davon nicht motiviert. Es dauerte einen von ihnen zwei ganze Monate, um zu lernen, wie eine Skriptfunktion geschrieben wird, um ein Datum im Zeichenfolgenformat zurückzugeben.
icelava
PS: Wie Sie wahrscheinlich wissen, verwenden Sie CACLS nicht, verwenden Sie XCACLS nicht, und Ihre ACL-Vererbungen gehen verloren.
Richard Gadsden
5

Ich habe einmal einen Systemadministrator eingestellt, der sich völlig weigerte, irgendwelche 'Programmierungen' vorzunehmen. Ich habe versucht, ihm den Weg zu weisen, indem ich mit gutem Beispiel vorangehe. Das Beste, was ich aus ihm herausholen konnte, war, vorhandenen Code zu verwenden und die Variablenzuweisung oder die Hostnamen usw. zu ändern. einen Job erledigen. Einige Leute haben einfach keine Probleme mit der Programmierung, deshalb müssen Sie die Barriere für sie senken.

Microsoft arbeitet daran. In SQL Server ist es seit einiger Zeit möglich, in der Management Studio-Benutzeroberfläche auf Inhalte zu klicken und dann ein t-sql-Skript von dem auszugeben, was Sie gerade getan haben. Dies ist großartig, vor allem für die nicht so geneigten Windows-Sysadmin-Programmierung.

Ich habe festgestellt, dass der System Center Virtual Machine Manager über dieselbe Ansichtsskriptfunktion verfügt, mit der Ausnahme, dass ein Powershell-Skript ausgegeben wird. Ich denke, viele andere Produktlinien führen dies ebenfalls ein.

Wie motiviere ich Administratoren zum Schreiben von Skripten? harter anruf, ein guter admin ist ein fauler admin & das bedeutet ein admin, der so viel wie möglich schreibt. Ein Administrator, der die Zeit hat, auf Dinge zu klicken, ist nicht sehr produktiv! Überladen Sie Ihre Admins mit so viel Arbeit, dass sie keine andere Wahl haben, als Skripte zu schreiben.

Nick Kavadias
quelle
Wie kannst du es wagen, mich faul zu nennen ?! Oh, warte ...
squillman
6
Faulheit ist eine Tugend für den Sysadmin!
Nick Kavadias
Helllllll ja!
squillman
2
Nach meiner Erfahrung überlasten die meisten Administratoren nur noch manuelle Klicks und benötigen mehr Zeit als je zuvor, um ihre Arbeit abzuschließen. :-) Ich denke, es gibt verschiedene Kategorien von Faulheit, einige sind faul zu denken und wollen einfach nur hirnlos klicken; Einige sind faul zu klicken und denken, um das zu reduzieren.
icelava
An welchem ​​Punkt du ihnen zeigst, wie du ihren Job durch Code ersetzen kannst, sie weinen vor Scham und ändern ihre Verhaltensweisen ... oder in welchem ​​Fall du sie nicht feuerst.
Nick Kavadias
4

Ich stimme Ihrem Beitrag voll und ganz zu. Leider gibt es meiner Meinung nach nicht viel, was ohne die Unterstützung des Managements und der Prozesse, die die Verwendung von Skripten erzwingen , getan werden kann . Wenn die Leute die Wahl haben, werden sie immer das tun, was ihnen vertraut ist und was einfach ist. Manchmal scheint dies ein negativer Punkt zu sein, aber manchmal sind Einfachheit und Vertrautheit von Vorteil.

Einerseits soll das Windows-System implizit einfach / leicht sein, während Unix- / Linux-Systeme viel schwieriger und weniger verzeihend sind. Wer kann die Admins beschuldigen, den Weg des geringsten Widerstands eingeschlagen zu haben? Während Sie, ich oder zahlreiche andere Leute die Macht des Skripts erkennen, werden die Leute irgendwann auf die eine oder andere Weise lernen. In der Regel lernen Administratoren, die sich mit Skripten auskennen, auf die harte Tour. Ich arbeite gerne schlauer, andere mögen vielleicht nur arbeiten.

Was sind einige Mittel, um Administratoren zu ermutigen und zu motivieren, dass Skripterstellung ihnen auf lange Sicht wirklich helfen kann?

Früher dachte ich , man die Leute motivieren können, aber die Realität ist , es sei denn , Sie sind verantwortlich für sie die Wahrscheinlichkeit einer erfolgreichen „Motivation“ extrem niedrig ist. Meine Einstellung in diesen Tagen ist: Wer lernen will, dem helfe ich. Seien Sie kein Verkäufer für ein Produkt, das niemand haben möchte, unabhängig davon, ob er es benötigt. Wenn Sie nur einer Person helfen / beibringen , die motiviert ist (aus welchem ​​Grund auch immer), werden sie der Katalysator für Veränderungen sein. Nicht du. Nur meine zwei Cent.

osij2is
quelle
1
+1 Sie können ein Pferd zum Wasser führen ...
squillman
2
... aber Sie können ihn nicht Wasserski machen.
osij2is
@squillman: Du hast genau das gesagt, was ich gedacht habe. Meine Einstellung dazu ist: Wenn Sie eine Fähigkeit haben, die anderen fehlt, nutzen Sie sie, um sich zu vermarkten und voranzukommen (was auch immer das für Sie bedeutet). Anderen dabei zu helfen, voranzukommen, ist sicherlich bewundernswert, aber man kann sie nicht zerren, treten und schreien.
Evan Anderson
@Evan: Denken Sie, dass das Unterrichten eines willigen Lernenden im Widerspruch zu "Vermarkten Sie sich selbst und kommen Sie voran" steht? Wenn einer der Windows-Administratoren meine Unterstützung anfordert (in Bezug auf Skripte), würde ich zögern, dies zu tun, aber bedeutet Teamarbeit letztendlich nicht, dass ich mehr als genug dafür tun muss, um ihnen zu helfen? Ich bin nur neugierig, deine Gedanken zu lesen.
osij2is
1
@ osij2is: Ich bin schuldig, "willigen Lernenden" zu einem solchen Überschuss verholfen zu haben, dass ich definitiv einige "Gelegenheiten" verspielt habe, mehr Stunden in Rechnung zu stellen, mehr Geld zu verdienen usw. Eine meiner "Missionen" im Leben ist es, das zu fördern Verwendung von Computern, um letztendlich das Leben eines Menschen zu verbessern. Wenn jemand mit dem ernsthaften Wunsch zu mir kommt, zu lernen, bin ich mehr als glücklich, alles weiterzugeben, was ich kann. Allerdings kann ich das auch, wenn ein "Fix" ohne Wissenstransfer gewünscht ist. Manchmal macht es mich traurig, wenn ich nicht in der Lage bin, "einem Mann das Fischen beizubringen", aber wenn die Situation dies erfordert ...
Evan Anderson
2

Ein Mantra, nach dem ich gehe, lautet "Arbeite schlauer, nicht härter". Wenn Sie einen Vorgang mehr als ein paar Mal ausführen, können Sie ihn in der Regel mit einem Skript ausführen, um ihn automatisch mit einem Mausklick, einem Bash-Skript oder einer anderen Methode ausführen zu lassen. So wie ich das sehe, habe ich persönlich die Freiheit, wichtigere Aufgaben zu erledigen, die nicht so sehr die "manuelle Arbeit" der Systemadministration sind.

Diejenigen, die Skripte vermeiden möchten, haben möglicherweise mehrere Dinge im Kopf. Vielleicht gefällt ihnen die GUI-Oberfläche und sie möchten keine Kommandozeile oder Programmierung erlernen. Vielleicht denken sie, dass sie durch das Ausschreiben von Skripten ihre eigene Selbstbedeutung reduzieren. In beiden Fällen ist dies nicht die Art von Mitarbeiter, die ich gerne hätte, und die Zurückhaltung, Skripte zu schreiben, zeigt, um welche Art von Mitarbeiter es sich handelt. Ich hätte lieber einen Problemlöser als einen "blöden" Systemadministrator.

Was die Ermutigung und Motivation angeht, würde ich sagen, einfach so zu tun, wie Sie es taten, die Produktivitätsgewinne zu zeigen und zu zeigen, wie sie ihre Arbeit erleichtern können. Für einige ist es nur ein Gehaltsscheck, ein Windows-Systemadministrator zu sein, und es wird schwierig sein, sie zu motivieren, über die in den letzten 10 Jahren für sie geltende Point-and-Click-Mentalität hinauszugehen.

Dave Drager
quelle
Gute Erinnerung an den "Problemlöser"; Viele Leute, die ich treffe, wollen nur eine Gebrauchsanweisung, die ihnen sagt, was sie für jedes denkbare Problem tun sollen. Sie wollen nicht darüber nachdenken, was passiert. Führen Sie einfach die Schritte 1 bis 23 aus, um dieses Problem zu beheben.
icelava
Ich neige dazu, diese Leute "Knopfdrücker" zu nennen, wie der bekannte zukünftige Arbeiter George Jetson.
wfaulk
2

Es gibt ein paar Probleme, die Sie überwinden müssen. Sie haben eines erwähnt: Viele Administratoren möchten nicht in die Programmierung involviert sein, selbst wenn sie so niedrig sind wie die Skripterstellung. Der andere hängt damit zusammen, und das ist eine Frage der Kontrolle. Wenn ein Administrator eine Aufgabe manuell ausführt, weiß er genau, was in jeder Phase geschieht. Viele Administratoren haben möglicherweise das Gefühl, dass sie durch das Ersetzen durch ein Skript die Kontrolle über den Prozess verlieren, insbesondere wenn sie das Skript nicht verstehen und das Skript nicht geschrieben haben (und es nicht schreiben wollten).

Ich denke, dies ist bei Windows-Administratoren ein größeres Problem als bei Unix-Administratoren, da Skripterstellung seit langer Zeit ein wichtiger Bestandteil der Unix-Administration ist und im Allgemeinen von Anfang an von Unix-Administratoren gelernt wird. ness führt zu einem manuelleren Prozess, und das Erstellen von Skripten kann unnatürlich erscheinen.

Leider ist es ein harter Kampf, Entwickler über diesen Buckel zu bringen. Damit der Administrator weiterhin das Gefühl hat, die Kontrolle zu haben, muss er verstehen, was das Skript tut, und daher muss er das Skripting wirklich verstehen und lernen. Sie können ihn nur dazu bringen, dies zu tun, wenn sie es tun Verstehe wirklich, was Scripting mit ihnen anstellen kann

Es ist alles sehr gut zu sagen, dass es die Dinge schneller macht, das Leben leichter macht usw. Aber können Sie es ihnen beweisen? Finden Sie eine Aufgabe, die sie hassen, die sie regelmäßig erledigen müssen, und versuchen Sie, sie zu automatisieren. Wenn Sie diese schreckliche Aufgabe übernehmen und daraus ein Skript mit nur einem Klick machen können, werden sie Sie lieben, aber was noch wichtiger ist, sie sehen möglicherweise den Vorteil der Verwendung von Skripten.

Sam Cogan
quelle
Schreiben Sie die Skripte mit gutem Feedback, vielleicht ein wenig interaktiver Kontrolle - benutzerfreundliches Zeug ^^
Oskar Duveborn
1
Ich fing an, Perl zu lernen, sobald mir klar wurde, dass ich einen besonders schrecklich langen und fiesen Routinejob annehmen und automatisieren konnte. Ich habe seitdem nicht mehr zurückgeschaut.
Twirrim
Mein Punkt ist all diese "schrecklichen Aufgaben", die sie immer noch lieber manuell erledigen würden. :-)
icelava
Entlassen Sie die Menge von ihnen und ersetzen Sie sie durch einen einzigen Administrator, der ein Über-Scripter ist. Ich werde billiger
Nick Kavadias
2

[seufz] Dies ist in der Windows-Welt viel zu weit verbreitet, obwohl ich Ihre Aussage über die Mehrheit in Frage stellen würde, die nicht ponyen und lernen möchte, Skripte zu schreiben. Das absolut Beste, was ich je in meiner Sysadmin-Karriere gemacht habe, war, VB und Perl zu lernen, was zu VBS führte, was VIELE andere Dinge anführte.

Wenn es nicht funktioniert, sie nur zu zeigen, um sie zu motivieren, ist ein Trick, den ich gerne verwende, subtile Aussagen vor dem Management zu verwerfen. Zeigen Sie den Entscheidungsträgern die Vorteile, die sich häufig in der Gruppe ausbreiten. Aber sei kein Idiot.

In einer subtileren Hinsicht ist es schwierig (wenn nicht unmöglich), jemanden zu ändern. Mit gutem Beispiel vorangehen!

Squillman
quelle
5
"Weißt du was, ich bin mir ziemlich sicher, dass ich das schreiben kann, damit wir nicht ständig Personal aufwenden müssen, um das auszuführen." Starke Worte vor dem Management :)
Twirrim
1
Ich habe immer geglaubt, dass sich nur in der Windows-Welt jemand als Administrator ohne jegliche Programmierkenntnisse bezeichnen kann. Ein weiterer Kommentar, den Sie hinzufügen könnten, ist "Warum machen Sie das manuell? Dafür haben wir Computer".
John Gardeniers
Leider sind die Admins, denen ich seit langem begegne, hauptsächlich die meiner Kunden. Ich habe nicht immer die Chance, sie vor dem Management oder dem IT-
Leiter
1

Diese Frage ist sehr subjektiv. Ich bin zwar mit der Effizienz und Kontrolle einverstanden, die das Scripting bietet, aber warum muss es ein Mandat sein? Warum müssen Sie die Leute dazu ermutigen, Skripte zu verwenden, nur weil Sie diese gerne verwenden? Warum lassen Sie die Leute nicht die Werkzeuge verwenden, die sie mögen und bevorzugen?

Diese Frage zeigt auch eine allgemeine Tendenz in der IT-Welt: Wenn ich kein Skript erstelle, muss ich nicht so schlau oder gut sein wie jemand, der Skripte erstellt, und das ist falsch. Ich habe viele Leute gekannt, die besser als ich Skripten können, aber sie konnten kein Subnetz erstellen, um ihr Leben zu retten oder herauszufinden, wie ein Netzwerk-Trace ausgeführt wird, oder SQL Server für die Verwendung von AWE konfigurieren, oder sie wussten nicht, was der Start ist. INI-Datei war für usw. usw.

Joeqwerty
quelle
2
Das Schreiben von Skripten sollte gefördert werden, da es sich um eine bewährte Methode handelt (es wurde weder ein Mandat erwähnt, noch glaube ich, dass dies impliziert wurde). Ich habe ehrlich gesagt nicht gesehen, dass du nicht so schlau bist, aber ich bezweifle nicht, dass es existiert. Ich würde diese Leute leicht als Narren abtun ...
squillman
2
Wie ist es subjektiv? Wie Sie sagten, verbessert Scripting die Effizienz. Es ist nichts Falsches daran, wenn ein Unternehmen Tools oder Prozesse einsetzt, die die Effizienz steigern. Es ist mit Sicherheit nichts auszusetzen, wenn ein Mitarbeiter versucht, andere zu ermutigen, eine Fähigkeit zu entwickeln, die sie zu besseren Systemadministratoren macht.
Brian
3
@squillman, der sagt, es ist eine bewährte Methode und ist das nicht selbst subjektiv. Was für mich die beste Praxis ist, ist vielleicht nicht für Sie. Gibt es eine Studie, die besagt, dass 90% der Unternehmen Scripting als Best Practice betrachten. @ Brian: Wer sagt, dass es sie zu besseren Systemadministratoren macht? Mein Kollege kann Skripte erstellen, aber kein Subnetz, während ich Subnetze erstellen kann, aber kein Skript ausführen kann. Wer ist also besser? Nichts für ungut, hier nur Teufelsanwalt zu sein.
Joeqwerty
3
@ Joeqwerty: Scripting ist im Vergleich zu Point-and-Click mächtig, da Scripting (korrekt) mehr Aufgaben in kürzerer Zeit und genauer erledigen kann, als wir Menschen dies jemals manuell tun könnten. Vielleicht sollte der Satz lauten: "Scripting ist eine bessere Praxis". Ihr Argument (des Teufels) ist subjektiver als die Behauptung selbst. "Was für mich am besten ist, ist vielleicht nicht für dich." Das mag stimmen, aber das heißt nicht, dass es nicht die beste Vorgehensweise ist. Es könnte bedeuten , Sie können nicht oder wissen nicht , wie es zu tun. Das ist an und für sich ein anderes Problem.
osij2is
2
Aber deine Meinung ist falsch. ;) Im Ernst, ich denke, das Vermeiden von Skripten ist wie das Vermeiden, zu wissen, wie man ein Subnetz baut. Keiner ist gut. Ich meine, wenn Sie damit einverstanden sind, dass Scripting die Effizienz und Kontrolle erhöht, warum argumentieren Sie dann, dass wir diejenigen, die es vermeiden, als gleich behandeln sollten? Wenn Sie jemanden einstellen würden, der Ihr Feld pflügt, würden Sie den Kerl lieber mit einem Traktor oder den Kerl mit einem Ochsen einstellen?
wfaulk
1

Ehrlich gesagt kann man ein Pferd zum Wasser führen, aber man kann ihn nicht zum Trinken bringen.

Ich bin vor ungefähr 10 Jahren als SysAd im Marine Corps aufgetaucht, wo es eine große Lücke zwischen dem Admin-Status und dem Coder-Status gibt. Ein Coder zu sein bedeutet normalerweise, dass Sie nicht mehr mit der Pet-Projekt-Website des CO umgehen können (wenn Sie nur wenig von Ihrer eigentlichen Arbeit erledigen ...).

Aus diesem Grund habe ich mich geweigert, das Programmieren zu lernen, aber als ich mich dazu entschied, es auszuprobieren, hatte ich eine Menge Spaß.

Versuchen Sie es mit AD / LDAP-Skripten, um jemanden anzulocken. (Ich denke, es ist ein bisschen zugänglicher als WMI.) Weisen Sie eine Abfolge von Aufgaben zu, und sagen Sie "Geben Sie mir die Benutzernamen und E-Mail-Adressen der Menschen in der Gruppe XYZ ".

Ich habe diesen Code geschrieben, um alle Benutzer zu finden, die keiner der angegebenen Gruppen angehören: https://github.com/gwaldo/LDAP-Inverse-Group-Membership-Report

In Bezug auf Ressourcen sollten Sie sich die Microsoft Scripting Guys (mit hervorragenden Artikeln und Tutorials) und Scriptomatic2 ansehen, die ich zum Einarbeiten in WMI liebe.

gWaldo
quelle
0

Die nächste Frage: Warum sollten sie ein Skript schreiben? Das wird die Antwort bestimmen.

Vermutlich schreiben Sie ein Skript, weil es effizienter ist. In diesem Fall können Sie entweder alle anderen aufzeigen oder das Management darauf hinweisen, dass es effizientere Möglichkeiten gibt, die Systeme zu verwalten, und darauf warten, dass sie dies in einer Kostensenkungsmaßnahme nutzen.

Jemand mit Autorität kann Skripte schreiben, indem er verlangt, dass Skripte vorhanden sind, um die meisten Dinge zu erledigen. Wie gut dies funktionieren wird, hängt von mehreren Dingen ab; Wenn nur so angegeben, bleiben die Skripte wahrscheinlich völlig unangemessen und veraltet, während die Administratoren wie gewohnt arbeiten.

Es stellt sich auch die Frage, wie genau sich dies auf Sie auswirkt. Stört es Sie nur, oder wäre Ihr Leben besser, wenn Ihre Admins Skripte schreiben würden?

David Thornley
quelle
Der Haupteffekt ist, dass Administratoren ihre Zeit damit verschwenden, wiederholte manuelle Aufgaben auf mehreren Maschinen auszuführen - längere Bearbeitungszeiten -, was sich auf unseren Entwicklungsplan auswirken kann (immer nie genug).
icelava
1
und vergessen Sie nicht, dass manuelle Aufgaben fehleranfällig sind.
John Gardeniers
0

Ich hatte tatsächlich einen anderen Gedanken. In Bezug auf die Tatsache, dass Junior-Windows-Administratoren an GUI-Interaktionen gewöhnt sind, wäre es möglicherweise hilfreich, wenn Sie sie mit einer Skript-GUI-Interaktion wie AutoIt starten würden . Dies würde es ihnen ermöglichen, in Bezug auf Skripten Fuß zu fassen und gleichzeitig die Tools zu verwenden, die sie bereits kennen, anstatt ihre vorhandenen Tools zu verwerfen und sie gleichzeitig dazu zu bringen, neue Tools und Skripten zu erlernen.

Sobald sie sich mit der Idee des Skripts im Allgemeinen vertraut gemacht haben, können sie zu Skripts übergehen, die nicht über die GUI ausgeführt werden. Auch wenn dies nicht der Fall ist, kann die Automatisierung von Tastenklicks möglicherweise viel Zeit sparen.

wfaulk
quelle
0

Ich habe Skripte als "Dokumentation, die die Arbeit für Sie erledigt" definiert.

Manager: Verbringen Sie unzählige Stunden damit, Unterlagen zu erstellen, die ein Erstklässler verstehen kann und die bis zum Ende der Woche veraltet sein werden, damit Ihre Mitarbeiter mit einem Mausklick durch Task-X klicken können.

Angestellter: Ich habe ein Skript, das Task-X ausführt, könnte ich ihnen das einfach geben.

Manager: Sicher, nachdem Sie die gerade angeforderte Dokumentation beendet haben, dokumentieren Sie auch Ihr Skript mit einem Flussdiagramm.

Nathan Hartley
quelle
0

Ich habe Skripte als "Dokumentation, die die Arbeit für Sie erledigt" definiert.

Manager: Verbringen Sie unzählige Stunden damit, Unterlagen zu erstellen, die ein Erstklässler verstehen kann und die bis zum Ende der Woche veraltet sein werden, damit Ihre Mitarbeiter mit einem Mausklick durch Task-X klicken können.

Angestellter: Ich habe ein Skript, das Task-X ausführt, könnte ich ihnen das einfach geben.

Manager: Sicher, nachdem Sie die gerade angeforderte Dokumentation beendet haben, dokumentieren Sie auch Ihr Skript mit einem Flussdiagramm.

Vergessen Sie nicht, dass sich die Dokumentation in einem MS Word-Dokument befinden sollte, um das Lesen vom Server zu erschweren.

brenbart
quelle
Ich habe diese Anforderung vergessen.
Nathan Hartley