Computer help - file server


[ Blog ] - [ File Server ] - [ Удаленная компьютерная помощь ]

Wie wil niet dat ze een tovenaar zouden kunnen zijn en een paar woorden zouden kunnen uitspreken om magische dingen te laten gebeuren? Welnu, we kunnen u niet laten zien hoe u een tovenaar kunt zijn, maar we kunnen u wel laten zien hoe u een beetje computermagie kunt beoefenen.

Als je een Windows-computer met Windows 7 hebt, heb je PowerShell. Als u een computer met Windows 7 heeft, werk deze dan voor de veiligheid bij.

Maar dit artikel is niet alleen voor Windows-mensen. De nieuwste versie van PowerShell is gratis en kan worden geïnstalleerd en gebruikt op Mac's en Linux-computers.

Dat is belangrijk, want wat u leert over PowerShell, kan nu op bijna elke computer worden gebruikt. Wie weet? U kunt deze vaardigheid naar een hoger niveau tillen en een carrière in informatietechnologie beginnen. Wat is PowerShell?

Het hoogtechnologische antwoord van Microsoft is dat het een "... opdrachtregel-shell is die speciaal is ontworpen voor systeembeheerders." Klinkt intimiderend. Maar dat is het niet. Zorgt u voor uw computer? Ja, dan ben jij de systeembeheerder in je huis.

Vertelt u uw computer wat te doen met klikken en toetsaanslagen? Ja, dus beschouw de commandoregel-shell als gewoon een ander venster waarin u dingen typt om uw computer te vertellen wat u moet doen.Je kan dit doen.

PowerShell is als een programmeertaal, maar niet zo cryptisch als de meeste. Het leest echt veel als normaal Engels, iets waar Microsoft naar streefde, zodat het door niet-programmeurs kon worden opgepikt.

Het is een manier om een ​​paar regels opdrachten te schrijven, een script genaamd, om het Windows-besturingssysteem iets te laten doen dat u wilt dat het doet. Vervolgens kunt u die regels in een bestand opslaan en met een klik uitvoeren of het periodiek laten uitvoeren. Wat kunt u doen met PowerShell?

Het belangrijkste punt van PowerShell is om taken te kunnen automatiseren, zodat u uw tijd niet herhaaldelijk hoeft te verspillen aan alledaagse dingen.Voor een professionele systeembeheerder kan dat zoiets zijn als het maken van nieuwe gebruikers, het genereren van wachtwoorden voor hen en het sturen van een e-mail met de details naar hun nieuwe supervisor.

Handmatig uitgevoerd, met klikken en typen, kan dat proces 5 minuten tot wel een uur of langer duren. Met de juiste scripts hoeft de systeembeheerder daar misschien niet eens een deel van uit te maken.

Maar u wilt weten wat u thuis met PowerShell kunt doen. Vrijwel alles wat je niet leuk vindt om keer op keer te doen.Gebruik het om ruimte vrij te maken op uw harde schijf door tijdelijke bestanden en logboekbestanden te verwijderen die u niet nodig heeft.

Zet een avondklok op de computer van uw kind. Hernoem of organiseer een aantal bestanden. Dat is het mooie van PowerShell. Bijna alles wat u op uw computer kunt doen, u kunt een PowerShell-script maken om te automatiseren en uit te voeren met een klik of volgens een schema. Hoe gebruik ik PowerShell?

De gemakkelijkste manier om met PowerShell te werken, is in de PowerShell Integrated Scripting Environment (ISE). Je kunt het vinden door op Start te klikken en powershell ise in de zoekbalk in Windows 10 te typen.Je zou het moeten zien zoals hieronder weergegeven.

Voor de eerste keer dat we het gebruiken, gaan we het uitvoeren als de beheerder. Om dit te kunnen doen, moet u eerst beheerdersrechten op uw computer hebben. Klik in uw Startmenu met de rechtermuisknop op PowerShell ISE en klik vervolgens op Uitvoeren als beheerder.

Mogelijk krijgt u een pop-up met een waarschuwing voor gebruikerstoegangscontrole (UAC) waarin u wordt gevraagd of u zeker weet dat u dit wilt doen. Klik op Ja.

Nu kijk je naar de PowerShell IDE. Het bovenste deelvenster van het venster (1) is het scriptvenster.Dit is waar je je script gaat schrijven. Het onderste deelvenster van het venster (2) is het consolegebied. Wanneer u uw script test, ziet u de uitvoer in dit deelvenster.

Hier ziet u ook foutmeldingen en dergelijke die u zullen helpen bij het oplossen en verbeteren van uw scripts. Het paneel aan de rechterkant van het venster (3) is de add-on voor het commando. Zie het als een woordenboek met alle PowerShell-opdrachten die voor u beschikbaar zijn.

PowerShell wordt geleverd om geen ander script uit te voeren dan degene die al deel uitmaken van Windows.U moet deze wijzigen zodat u uw eigen scripts kunt uitvoeren.

Kopieer en plak het volgende in het scriptvenster: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Het Set-ExecutionPolicy-gedeelte ervan wordt een cmdlet (uitgesproken commandlet) genoemd. Cmdlets zijn krachtige dingen. Beschouw ze als korte commando's die u Windows kunt geven, en Windows zal een aantal meer gecompliceerde dingen doen om aan uw commando te voldoen.

Een analogie zou zijn: uw kind vertellen om zijn kamer op te ruimen. Kort en bondig.Als uw kind goed thuis is in het schoonmaken van kamers, zullen ze hun bed gaan opmaken, hun wasgoed in de mand doen, hun speelgoed en boeken opbergen en misschien zelfs de vloer stofzuigen. Ze begrijpen dat de cmdlet Clean-YourRoom dat allemaal betekende.

Boven aan het venster ziet u een groene pijlpunt. Klik erop om de opdracht uit te voeren.

Het -ExecutionPolicy-gedeelte vertelt Set-ExecutionPolicy welk beleid moet worden ingesteld. Het is een parameter. Het zegt: "Ik wil dat je binnen deze richtlijnen werkt en dit specifiek doet.Het vertelt het om het specifieke beleid van RemoteSigned te gebruiken.

Het RemoteSigned-beleid stelt dat PowerShell geen script mag uitvoeren of uitvoeren dat van internet is gedownload, tenzij het is ondertekend door een vertrouwde uitgever.

Op een omweg vertelt het PowerShell dat het prima is om elk lokaal gemaakt script uit te voeren, omdat deze niet hoeven te worden ondertekend door een externe vertrouwde uitgever. Nu kan uw PowerShell-script elk script uitvoeren dat u op uw computer schrijft.

Laten we eens kijken naar een script om tijdelijke bestanden te verwijderen.Het is niet zo krachtig of grondig als CCleaner, maar CCleaner heeft zijn eigen reeks problemen. Gebruik PowerShell om ruimte op uw harde schijf te creëren

We zullen dit script regel voor regel opsplitsen, zodat u kunt zien hoe het werkt. Aan het einde wordt het script volledig weergegeven, zodat u het kunt kopiëren en plakken als u dat wilt. $ TempFileLocation = "C: \ Users \ gebruikersnaam \ Appdata \ Local \ Temp \ *"

Alles met een dollarteken ervoor is een variabelenaam. Zie het als een portemonnee om waardevolle spullen in te stoppen.Wallet herinnert ons aan het dollarteken, kostbaarheden klinkt als variabel, dus dat zullen we ook onthouden. We maken een portefeuille of variabele met de naam $ TempFileLocation. Het gelijkteken vertelt PowerShell wat er in die variabele moet worden geplaatst.

In dit geval plaatsen we de locatie van de locatie van de tijdelijke bestanden van Windows: C: \ Users \ gebruikersnaam \ AppData \ Local \ Temp \ *. We doen dit om twee redenen; het is een locatie die altijd veilig is om bestanden te verwijderen, en we gaan het gebruiken om PowerShell te vertellen waar het naartoe moet om bestanden te verwijderen.

Waar het gebruikersnaam op die locatie zegt, verwissel het voor uw gebruikersnaam. Dat is de gebruikersnaam die u gebruikt om in te loggen op uw computer. De asterisk (*) aan het einde ervan is een jokerteken. Het vertegenwoordigt alles in de map Temp, omdat alles in de map Temp tijdelijk is en we het willen verwijderen.

De dubbele aanhalingstekens rond de locatie zijn ook belangrijk. Dat vertelt PowerShell dat wat erin zit een string is. Zie tekenreeks als een reeks letters en tekens. Als het gewone cijfers waren, zouden we de aanhalingstekens niet gebruiken.$ TempFile = Get-ChildItem $ TempFileLocation -Recurse

We maken een andere variabele. Deze keer gaan we een commando gebruiken om iets te bedenken om in de $ TempFile variabele te plaatsen. Get-ChildItem

Iets anders dat u opvalt aan cmdlets zoals Get-ChildItem is dat het volledig leesbaar is. Zie je hoe het eerste woord een werkwoord is? Cmdlets beginnen allemaal met actiewoorden, zodat je meteen weet wat het doet. ChildItem bestaat uit twee zelfstandige naamwoorden.

Het tweede deel van de cmdlet zal ons altijd vertellen waarop PowerShell de actie zal toepassen.ChildItem betekent alle onderliggende items van een bovenliggende locatie. Dit is hetzelfde als zeggen: haal alle bestanden op die in een map staan, waarbij bestanden de kinderen zijn en de map de ouder.

Waar haalt de cmdlet de onderliggende items van op? Alles in de variabele $ TempFileLocation. PowerShell gaat naar de locatie die we eerder in $ TempFileLocation hebben geplaatst en haalt alle onderliggende items op die daar zijn. Vervolgens worden ze in de variabele $ TempFile geplaatst.

Dus, wat is er met het -Recurse-gedeelte? Dat zegt Get-ChildItem om alles op die locatie te doorlopen.Haal de bestanden niet meteen op in de bovenliggende map. Als er mappen in die map staan, neem dan al hun kinderen mee, en hun kinderen enzovoort. We gaan ze allemaal krijgen. $ TempFileCount = ($ TempFile) .count

Ja, we maken een derde variabele genaamd $ TempFileCount, en we gaan een nummer in die variabele plaatsen. Waar is het nummer? Welnu, ($ TempFile) .count gaat ons dat aantal bezorgen. Je hebt waarschijnlijk ontdekt dat het .count-gedeelte alle bestanden gaat tellen die we zojuist in $ TempFile hebben opgeslagen.

Waarom hebben we dit gedaan? Vooral omdat het goed is om te weten hoeveel nutteloze bestanden we met de rest van het script opschonen, zodat we kunnen zien hoe effectief het was. if ($ TempFileCount -eq 0)

Nu gaan we een voorwaardelijke instructie opzetten. U kunt zien dat het ‘als’ vraagt. Als wat? Als het ding tussen haakjes waar of onwaar is. De haakjes zijn belangrijk, anders weet de If niet wat hij moet vergelijken. Hier wordt gevraagd of het aantal dat we hebben opgeslagen in $ TempFileCount gelijk is aan nul.

De -eq is de afkorting voor gelijken. Het is een soort vergelijkingsoperator. Het is alsof je tegen je kinderen zegt: "Als je kamer schoon is, geweldig, dan gaan we iets doen ..." Deze verklaring zegt dat als het getal dat in $ TempFileCount is opgeslagen, gelijk is aan nul, doe dan het volgende. {Write-Host "Er zijn geen bestanden in de map $ TempFileLocation" -ForegroundColor Green}

Dat is wat er gebeurt als $ TempFileCount nul is. De accolades zijn belangrijk. Ze vertellen PowerShell om alleen te doen wat erin zit als $ TempFileCount gelijk is aan nul.

Het zal naar de host of het scherm schrijven, "Er zijn geen bestanden in de map C: \ Users \ gebruikersnaam \ Appdata \ Local \ Temp \ *". De parameter aan het einde, –ForegroundColor vertelt PowerShell om de tekst groen te maken. Dat maakt het alleen gemakkelijker om te onderscheiden van een foutmelding die normaal gesproken rood is. Anders

Je weet wat nog meer betekent. Dit is het 'Je kamer is beter schoon of anders ...' onderdeel van het controleren of je kind zijn kamer heeft schoongemaakt. Het is wat er zal gebeuren als $ TempFileCount niet nul is. {$ TempFile | Remove-Item -WhatIf -Confirm: $ false -Recurse -Force -WarningAction SilentlyContinue -ErrorAction SilentlyContinue}

Dit zegt: ga naar de huidige locatie die is opgeslagen in $ TempFile.De verticale lijn erna wordt een pijp genoemd. Het functioneert als een soort pijp uit het echte leven, omdat het PowerShell vertelt om de inhoud van $ TempFile naar de cmdlet te leiden, alsof het water is dat in een wasmachine wordt geleid. Vervolgens doet de cmdlet Remove-Item wat het zegt; het verwijdert alles wat zich op die locatie bevindt.

De parameter -WhatIf is erg belangrijk in dit stadium. Het vertelt PowerShell om de opdracht uit te voeren, maar probeer het alleen uit, verwijder niets. Laat ons gewoon zien wat er zou gebeuren als we dit echt zouden doen.

Hiermee kunt u opdrachten testen zonder iets op uw computer te wijzigen. Laat de -WhatIf erin staan ​​totdat u er zeker van bent dat het script gaat doen wat u wilt dat het doet en niets anders. Verwijder dat dan gewoon en het script zal zijn werk doen.

De parameter -Confirm: $ false zorgt ervoor dat het script niet vraagt ​​of je het bestand echt wilt verwijderen. Weet je wat -Recurse doet. -Force betekent dat ding verwijderen, wat er ook gebeurt. -WarningAction is ingesteld op SilentlyContinue.

Dit voorkomt dat het script u waarschuwt over wat u verwijdert. -ErrorAction is ingesteld op SilentlyContinue, zodat als er een fout in het proces zit, het gewoon blijft chuggen.

Nu zijn we bij de laatste regel. Write-Host "Verwijderde $ TempFileCount-bestanden in de map $ TempFileLocation" -ForegroundColor Green}

Net zoals Write-Host dat de eerste keer deed, gaat het de volgende zin uitvoeren, zodat we weten wat er is gebeurd. Het zal ons vertellen hoeveel bestanden zijn verwijderd uit de map die het zojuist heeft verwerkt en zal dit in het groen doen om het gemakkelijk te vinden.

Laten we het script helemaal bekijken: $ TempFileLocation = "C: \ Users \ guymcd \ Appdata \ Local \ Temp \ *" $ TempFile = Get-ChildItem $ TempFileLocation -Recurse $ TempFileCount = ($ TempFile) .count if ($ TempFileCount -eq "0") {Write-Host "Er zijn geen bestanden in de map $ TempFileLocation" - ForegroundColor Green} Else {$ TempFile | Remove-Item -Confirm: $ false -Recurse -Force -WarningAction SilentlyContinue -ErrorAction SilentlyContinue Write-Host "Verwijderde $ TempFileCount-bestanden in de map $ TempFileLocation" -ForegroundColor Green}

U kunt dit kopiëren en in uw PowerShell ISE en sla het op als iets als delete-TemporaryFiles.ps1. U kunt net zo goed vasthouden aan de naamgevingsconventie van cmdlets nu u ze begrijpt.

Als de code om de een of andere reden niet voor u werkt, kunt u ook het door ons gemaakte PowerShell-script downloaden en het gewoon uitvoeren. Pak het eerst uit om het scriptbestand te bekijken.

Wanneer u dit script wilt uitvoeren, klikt u er met de rechtermuisknop op en kiest u Uitvoeren met PowerShell. Een PowerShell-console verschijnt gedurende een seconde of twee, terwijl uw script zijn ding doet, en verdwijnt dan als er geen fouten zijn.

Waar kan ik meer leren over PowerShell?

Dat lijkt veel! Voor je eerste PowerShell-script is het een aardig beetje. Als je zover bent gekomen, applaudisseer dan zelf. Je hebt vandaag veel geleerd, maar nu wil je meer leren. Dat is geweldig!

Er zijn veel bronnen op internet om meer te weten te komen over PowerShell. Een goede plek om te beginnen is ons artikel "Genereer een lijst met opstartprogramma's via de opdrachtregel of PowerShell". Bekijk dan deze andere bronnen: Aan de slag met Microsoft PowerShell - Microsoft Virtual Academy PowerShell-zelfstudie - TutorialsPoint.com

.
SETUP UA COMPUTER BLOG