Verwenden von PowerShell für Heimnutzer - einen Anfängerhandbuch

Verwenden von PowerShell für Heimnutzer - einen Anfängerhandbuch

Wer wünscht sich nicht, dass sie ein Zauberer sein könnten und ein paar Worte aussprechen, damit magische Dinge passiert? Nun, wir können Ihnen nicht zeigen, wie man ein Zauberer ist, aber wir können Ihnen zeigen, wie man einen kleinen Computermagie macht.

Wenn Sie einen Windows -Computer mit Windows 7 haben, haben Sie PowerShell. Wenn Sie einen Computer mit Windows 7 haben, aktualisieren Sie ihn für den Sicherheitswesen willen.

Inhaltsverzeichnis

    Zum ersten Mal, als wir es verwenden, werden wir es als Administrator ausführen. Dazu müssen Sie zuerst Administratorrechte auf Ihrem Computer haben. In deinem Startmenü, Klicken Sie mit der rechten Maustaste auf Powershell ise, Klicken Sie dann auf Als Administrator ausführen.

    Sie können eine bekommen Benutzerzugriffskontrolle (UAC) Warnpop-up und fragt, ob Sie sicher sind, dass Sie dies tun möchten. Klicken Ja.

    Jetzt schauen Sie sich die Powershell -IDE an. Das obere Scheibenscheibe des Fensters (1) ist die Skriptscheibe. Hier schreiben Sie Ihr Skript. Das untere Bereich des Fensters (2) ist der Konsolenbereich. Wenn Sie Ihr Skript testen, sehen Sie die Ausgabe in diesem Bereich.

    Hier sehen Sie auch Fehlermeldungen und so, dass Sie Ihre Skripte verbessern und verbessern können. Die Scheibe auf der rechten Seite des Fensters (3) ist das Befehls-Add-On. Betrachten Sie es als ein Wörterbuch aller PowerShell -Befehle, die Ihnen zur Verfügung stehen.

    PowerShell wird so eingestellt, dass kein anderes Skript als diejenigen ausführt, die bereits einen Teil von Windows haben. Sie müssen es ändern, damit Sie Ihre eigenen Skripte ausführen können.

    Kopieren Sie im Skriptfenster Folgendes und fügen Sie Folgendes ein:

    Set -ExecutionPolicy -executionPolicy Remotessigned

    Der Set-ExecutionPolicy Ein Teil davon wird als CMDLET bezeichnet (ausgesprochen Commandlet). CMDlets sind mächtige Dinge. Stellen Sie sich sie als kurze Befehle vor, die Sie Windows geben können, und Windows wird ein paar kompliziertere Dinge machen, um Ihren Befehl zu befriedigen.

    Eine Analogie würde Ihrem Kind sagen, er solle sein Zimmer reinigen. Kurz und auf den Punkt. Wenn Ihr Kind mit der Reinigung von Raumverwaltung vertraut ist, dann werden es sein Bett machen, ihre Wäsche in den Korb legen, ihr Spielzeug und Bücher aufstellen und vielleicht sogar den Boden vakuumieren. Sie verstehen, dass das CMDLET das alles bedeutet.

    Am oberen Ende des Fensters sehen Sie eine grüne Pfeilspitze. Klicken Sie darauf, um den Befehl auszuführen.

    Der -ExecutionPolicy Teil ist aussagekräftig Set-ExecutionPolicy Welche Richtlinie zu setzen. Es ist ein Parameter. Es heißt: „Ich möchte, dass Sie in diesen Richtlinien arbeiten und dies speziell tun. Es fordert es an, die spezifische Richtlinie der Fernbedienung zu verwenden.

    Der Abgelegen In den Richtlinien heißt es, dass PowerShell ein Skript, das aus dem Internet heruntergeladen wurde, nicht ausführen oder ausführen darf, es sei denn, es wurde von einem vertrauenswürdigen Verlag unterzeichnet.

    Auf eine Art und Weise zeigt es PowerShell, dass es in Ordnung ist, ein lokales Skript auszuführen, da diese nicht von einem Fernbedienungsverlag unterzeichnet werden müssen. Jetzt kann Ihr PowerShell -Skript jedes Skript ausführen, das Sie auf Ihrem Computer schreiben.

    Schauen wir uns ein Skript an, um temporäre Dateien zu löschen. Es ist nicht so leistungsfähig oder gründlich wie Ccleaner, aber CCleaner hat seine eigenen Probleme.

    Verwenden Sie PowerShell, um Platz auf Ihrer Festplatte zu schaffen

    Wir werden dieses Skript, Zeile für Zeile, aufschlüsseln, damit Sie sehen können, wie es funktioniert. Am Ende wird das Skript vollständig angezeigt, damit Sie es kopieren und einfügen können, wenn Sie möchten.

    $ Tempfilelocation = "C: \ Benutzer \ Benutzername \ AppData \ Local \ temp \*"

    Alles, was mit einem Dollarschild davor ist, ist ein variabler Name. Stellen Sie sich das wie eine Brieftasche vor, um wertvolle Dinge hineinzugeben. Brieftasche erinnert uns an das Dollar -Zeichen, Wertsachen klingen nach variabler, also werden wir uns auch daran erinnern. Wir erstellen eine Brieftasche oder eine Variable, benannt $ Tempfilelocation. Das gleiche Zeichen sagt PowerShell, was in diese Variable eingebracht werden soll.

    In diesem Fall setzen wir den Speicherort eines Windows -Standorts einer Windows -Dateien ein - C: \ Benutzer \ Benutzername \ appdata \ local \ temp \*. Wir machen das aus zwei Gründen; Es ist ein Ort, an dem Dateien immer sicher gelöscht werden können, und wir werden ihn verwenden, um PowerShell zu sagen, wohin es zu Löschen von Dateien gehen muss.

    Wo es den Benutzernamen an diesem Ort besagt, tauschen Sie es gegen Ihren Benutzernamen aus. Dies ist der Benutzername, mit dem Sie sich bei Ihrem Computer anmelden. Das Sternchen (*) am Ende ist eine Wildkarte. Was es darstellt, ist alles in der Ordnertemperatur, denn alles im Temperaturordner ist vorübergehend und wir möchten es löschen.

    Die doppelten Zitate rund um den Ort sind auch wichtig. Das sagt PowerShell, dass das, was dort ist, eine Zeichenfolge ist. Stellen Sie sich Zeichenfolge als eine Zeichenfolge und Zeichen vor. Wenn es gewöhnliche Zahlen wären, würden wir die Zitate nicht verwenden.

    $ Tempfile = Get -childitem $ tempfilelocation -Recurse

    Wir machen eine andere Variable. Diesmal werden wir einen Befehl verwenden, um etwas zu finden, das wir in das einfügen können $ Tempfile Variable.

    Get-Childitem 

    Eine andere Sache, die Sie über CMDlets mögen, wie Get-Childitem ist, dass es völlig lesbar ist. Sehen Sie, wie das erste Wort ein Verb ist? CMDLets beginnen alle mit Aktionswörtern, sodass Sie sofort wissen, was es tut. Childitem sind zwei Substantive.

    Der zweite Teil des CMDLet wird uns immer sagen, was PowerShell die Aktion anwendet. Childitem bezeichnet alle Kinder eines Elternortes. Dies ist wie zu sagen, dass alle Dateien in einem Ordner angezeigt werden, wobei Dateien die Kinder und der Ordner die Eltern sind.

    Was ist das CMDLET? Alles in der Variablen $ Tempfilelocation. PowerShell wird zu dem Ort gehen, den wir früher in $ tempfilelocation einsetzen und alle Kinderartikel erhalten, die dort sind. Dann wird sie in die Variable eingesetzt $ Tempfile.

    Also, was ist mit dem -Wiederholen Teil? Das ist erzählt Get-Childitem Alles an diesem Ort durchzugehen. Gehen Sie nicht einfach die Dateien sofort in den übergeordneten Ordner. Wenn es Ordner in diesem Ordner gibt, holen Sie sich auch alle ihre Kinder und ihre Kinder und so weiter. Wir werden sie alle bekommen.

    $ TempfileCount = ($ tempfile).zählen

    Ja, wir erstellen eine dritte Variable namens $ TempfileCount, Und wir werden eine Zahl in diese Variable einfügen. Wo ist die Nummer? Also, ($ Tempfile).zählen wird uns diese Zahl bringen. Sie haben wahrscheinlich herausgefunden, dass die .Count -Teil wird die Zählung aller Dateien durchführen, die wir gerade in $ tempfile gespeichert haben.

    Warum haben wir das gemacht?? Meistens, weil es schön ist zu wissen, wie viele nutzlose Dateien wir mit dem Rest des Skripts reinigen, damit wir erkennen können, wie effektiv es war.

    if ($ tempfileCount -eq 0)

    Jetzt stellen wir eine bedingte Anweisung ein. Sie können sehen, dass es sich um "ob" fragt. wenn was? Wenn das Ding in den Klammern wahr oder falsch ist. Die Klammern sind wichtig, sonst weiß das nicht, was sie vergleichen soll. Hier fragt es, ob die Nummer, in der wir gespeichert sind $ TempfileCount ist gleich Null.

    Der -Gl ist die Abkürzung für Gleichen. Es ist eine Art Vergleichsbetreiber. Es ist, als würde man Ihren Kindern sagen: „Wenn Ihr Zimmer sauber, großartig ist, werden wir etwas tun…“. Diese Aussage heißt, ob die Nummer, die in $ tempfileCount gespeichert wurde.

    Write -Host "Es gibt keine Dateien im Ordner $ tempfilelocation" -ForegroundColor Green

    Das ist das, was passieren wird, wenn $ TempfileCount ist Null. Die lockigen Klammern sind wichtig. Sie sagen PowerShell, sie soll nur das tun, was sich in ihnen befindet, wenn $ tempfileCount gleich Null ist.

    Es wird an den Host oder den Bildschirm geschrieben: "Es gibt keine Dateien im Ordner c: \ user \ userername \ appdata \ local \ temp \*". Der Parameter am Ende, -Vordergrundfarbe sagt PowerShell, er solle den Text grün machen. Das erleichtert es einfach, von einer Fehlermeldung zu unterscheiden, die normalerweise rot ist.

    Anders

    Sie wissen, was sonst noch bedeutet. Dies ist das „Ihr Zimmer ist besser sauber oder sonst…“ Teil der Überprüfung, ob Ihr Kind sein Zimmer gereinigt hat. Es ist das, was passieren wird, wenn $ TempfileCount ist nicht Null.

    $ Tempfile | Remove -item -Whatif -Nach: $ false -Recurse -Force -WarningAction stillschweigend Kontinue -Erroraktion stillschweigend Continue

    Dies heißt $ Tempfile. Die vertikale Linie, nachdem sie als Pfeife bezeichnet wird. Es funktioniert wie ein reales Rohr, da es PowerShell sagt. Dann das cmdlet Gegenstand entfernen macht was es sagt; Es entfernt, was auch immer an diesem Ort ist.

    Der -Was ist, wenn Parameter ist in dieser Phase sehr wichtig. Es fordert PowerShell an. Zeigen Sie uns einfach, was passieren würde, wenn wir das wirklich tun würden.

    Auf diese Weise können Sie Befehle testen, ohne etwas auf Ihrem Computer zu ändern. Lassen Sie das -Was ist dort drin, bis Sie sich wohl fühlen, dass das Skript das tun wird, was Sie wollen, und sonst nichts. Dann löschen Sie das einfach und das Skript wird seinen Job erledigen.

    Der Parameter -Bestätigen Sie: $ false Verhindert das Skript daran, zu fragen, ob Sie die Datei wirklich löschen möchten. Weißt du was -Wiederholen tut. -Gewalt bedeutet, dieses Ding zu löschen, egal was passiert. -Warnung ist eingestellt auf Stillschweigend.

    Dies verhindert, dass das Skript Ihnen Warnungen darüber gibt, was Sie löschen. -Fehleraktion ist eingestellt auf Stillschweigend so dass es beim Prozess, wenn es irgendeine Art von Fehler gibt.

    Jetzt sind wir in der letzten Zeile.

    Schreibhost "$ tempfileCount -Dateien im Ordner $ tempfilelocation" -ForegroundColor Green gelöscht

    So wie Schreibhost Das erste Mal wird es den folgenden Satz ausgeben, also wissen wir, was passiert ist. Es wird uns zeigen, wie viele Dateien aus dem gerade verarbeiteten Ordner gelöscht wurden, und tun Sie es in Grün, um es leicht zu erkennen, um zu erkennen.

    Schauen wir uns das Skript insgesamt an:

    $ Tempfilelocation = "C: \ Benutzer \ Guymcd \ AppData \ Local \ temp \*"
    $ Tempfile = Get -childitem $ tempfilelocation -Recurse
    $ TempfileCount = ($ tempfile).zählen
    if ($ tempfileCount -eq "0")
    Schreibhost "Es gibt keine Dateien im Ordner $ tempfilelocation" - Vordergrundcolor Green

    Anders
    $ Tempfile | REME -ITEM -KONFURM: $ false -Recurse -force -Warning stillschweigend Kontinue -Erroraktion lautlos
    Schreibhost "$ tempfileCount -Dateien im Ordner $ tempfilelocation" -ForegroundColor Green

    Sie können diese kopieren und in Ihren PowerShell ISE einfügen und es als so etwas speichern TemporaryFiles löschen.PS1. Sie können sich auch an der Namenskonvention von CMDlets halten, da Sie sie verstehen, da Sie sie verstehen.

    Wenn der Code aus irgendeinem Grund nicht für Sie funktioniert, können Sie auch das von uns erstellte PowerShell -Skript herunterladen und einfach ausführen. Entpacken Sie es einfach zuerst, um die Skriptdatei anzuzeigen.

    Wann immer Sie dieses Skript ausführen möchten, klicken Sie mit der rechten Maustaste darauf und wählen Sie es Laufen Sie mit PowerShell. Eine PowerShell -Konsole wird für ein oder zwei Sekunden auftauchen, während Ihr Skript seine Sache tut, und dann verschwindet, wenn es keine Fehler gibt.

    Wo kann ich mehr PowerShell lernen??

    Das scheint viel zu sein! Für Ihr erstes PowerShell -Skript ist es ein gutes Stück. Wenn Sie es so weit geschafft haben, begrüßen Sie sich. Sie haben heute viel gelernt, aber jetzt möchten Sie mehr lernen. Das ist großartig!

    Es gibt viele Ressourcen im Internet, um mehr über PowerShell zu erfahren. Ein guter Ausgangspunkt ist unser Artikel: "Generieren Sie eine Liste von Startprogrammen über Befehlszeile oder PowerShell". Schauen Sie sich dann diese anderen Ressourcen an:

    • Erste Schritte mit Microsoft PowerShell - Microsoft Virtual Academy
    • PowerShell Tutorial - Tutorialspitze.com