Anslut till Senaste Tekniska Nyheter, Bloggar, Recensioner

Hur man visar, skapar och tar bort schemalagda uppgifter med PowerShell

Både CMD och PowerShell ingår som standard i Windows och ansvarar för att arbeta igenom kommandon och skript som gör att vi kan ha större kontroll över operativsystemet. Men i de flesta fall kommer det att vara nödvändigt att ha avancerade kunskaper om Windows för att kunna använda och dra nytta av dess fördelar.

Visa, skapa och ta bort schemalagda uppgifter med PowerShell

Och är att med PowerShell-alternativet kan vi schemalägga, ändra och ta bort uppgifter. Detta kan vara mycket användbart när vi behöver påskynda processen att skapa uppgifter på flera enheter eller om vi behöver skapa ett skript som behöver interagera med konsolen. Det är därför vi idag ska se hur vi kan skapa eller ta bort uppgifter, program med Windows PowerShell.

Vad är PowerShell och vad är det till för

Även känd som Windows PowerShell, är det en kommandoradsverktyget som presenteras som en förbättrad och avancerad version av den traditionella kommandotolken, som gör det möjligt för oss att köra olika kommandoföreningar, kallade skript, vilket underlättar skapandet, konfigureringen och automatiseringen av flera uppgifter. Den är baserad på .NET CLR så den är idealisk för processautomatisering. Därför står vi inför ett verktyg som, givet sin flexibilitet, vanligtvis används av både ingenjörer och systemanalytiker regelbundet.

Till skillnad från andra kommandoradsgränssnitt som CMD kan PowerShell arbeta med objekt utöver ett enkelt kommando. Tack vare dess kompletta skriptgränssnitt kan vi utföra specifika funktioner under Windows-operativsystemet, som till exempel att starta olika kommandon för att automatisera olika uppgifter. Dessutom ger det oss möjlighet att lägga till andra kommandon till konsolen som har skapats av användarna själva.

Även om PowerShell för många användare, särskilt med grundläggande kunskap om Microsofts operativsystem, är ett helt okänt verktyg, är sanningen att det redan var kompatibelt med Windows XP, med undantaget att det var nödvändigt att ladda ner det för att kunna använda det . Sedan Windows 10 kom, är PowerShell redan förinstallerat och har fått större framträdande plats och synlighet så att åtkomsten är enklare inom Microsofts operativsystem.

Skapa en schemalagd uppgift med PowerShell

Det första vi måste göra är att öppna PowerShell genom att ge det administratörsbehörigheter. För att göra detta kommer vi att använda startmenyns sökmotor där vi kommer att skriva powershell. När applikationen dyker upp klickar vi på Kör som administratör.

Ejecutar PowerShell som administratör

Därefter visas ett fönster som varnar oss om att applikationen kommer att göra ändringar på enheten, så vi klickar på Ja och PowerShell-skärmen visas synligt, varifrån vi kommer att börja skriva de nödvändiga kommandona för att skapa våra schemalagda uppgifter.

När PowerShell-skärmen har dykt upp måste vi ange följande kommando:

$action = New-ScheduledTaskAction -Kör ‘app-path’

PowerShell app sökväg

Senare måste vi komma ihåg att vi måste ersätta applikationssökvägen med den ursprungliga sökvägen för applikationen som vi vill köra. Till exempel, om vi vill öppna Mozilla Firefox måste vi använda filen Firefox.exe, så den fullständiga sökvägen skulle vara som följer:

$action = New-ScheduledTaskAction -Kör ‘C: / Archivos de programa / Mozilla Firefox / firefox.exe’

PowerShell-program för Firefox

Om vi ​​behöver skapa ett PowerShell-skript kommer det att vara nödvändigt att använda “-argument” och specificera skriptet. På så sätt bör det slutliga resultatet bli sådant

New-ScheduledTaskAction -Kör ‘powershell.exe’ -argument script-path

Nästa steg kommer att bestå av att ställa in den tid vi vill utföra den uppgift vi vill schemalägga, att kunna välja vilken tid vi behöver. Vi kan välja mellan 12 eller 24 timmars format. I händelse av att vi väljer ett 12-timmarsformat måste vi åtfölja det med AM / PM vid den tid som anges i kommandot. Till exempel kan vi schemalägga programmet att köras en gång klockan 19:00 eller klockan 19:00 samma dag. Det kommer också att vara möjligt att konfigurera den att aktiveras dagligen, veckovis, månadsvis, etc.

För detta måste vi använda följande kommando:

$trigger = New-ScheduledTaskTrigger -En gång -Klockan 19:00

PowerShell-kommando för establecer hora de tarea programada

Därefter måste vi registrera uppgiften som vi ska programmera, vi måste ange följande kommando, ändra DemoName, DemoTask och DemoDescription enligt våra preferenser:

Register-ScheduledTask -Åtgärd $action -Trigger $trigger -TaskPath “DemoName” -TaskName “DemoTask” -Description “DemoDescription”

PowerShell-registrator för tarea programada

När detta är gjort kommer systemet att ha automatiserat uppgiften som vi har schemalagt och den kommer alltid att köras vid den tid vi har ställt in. Så snart vi inte längre vill genomföra programmeringen av denna uppgift måste vi gå vidare med att eliminera den.

Ta bort en schemalagd uppgift med PowerShell

För att eliminera alla programuppgifter måste vi starta PowerShell igen med administratörsbehörighet. Vi kommer att skriva powershell i sökmotorn i Start-menyn. När applikationen visas klickar du på “Kör som administratör”. Därefter visas ett fönster som varnar oss om att applikationen kommer att göra ändringar i enheten, så vi klickar återigen på Ja och PowerShell-skärmen visas synligt.

När PowerShell-fönstret har dykt upp måste vi ange följande kommando och ersätta DemoTask med namnet på den ursprungliga uppgiften:

Avregistrera-ScheduledTask -TaskName “DemoTask” -Bekräfta: $false

PowerShell hämtar tarea programada

När detta är gjort trycker vi på enter och uppgiften kommer att elimineras. Alternativt kan vi skriva följande kommando för att bekräfta att uppgiften har eliminerats och se till att den inte kommer att fortsätta att köras på schemalagd basis. För detta kommer vi att skriva:

Get-ScheduledTask -TaskName “DemoTask”

PowerShell-komprobar för att ta bort programmet har eliminerats

Detta kommando kommer att ansvara för att bekräfta att DemoTask-uppgiften inte längre är tillgänglig. När vi har slutfört stegen bör vi få ett felmeddelande. Detta kommer att berätta för oss att det inte finns någon uppgift med det specifika namnet. Det betyder att uppgiften som vi hade schemalagt redan har eliminerats korrekt tidigare.

Hantera schemalagda uppgifter med PowerShell

Windows PowerShell-kommandot låter oss också hantera uppgifter. För detta använder vi kommandot Get-ScheduledTask som kommer att ansvara för att returnera alla eller några av de uppgifter som schemalagts av vårt team.

För att utföra denna åtgärd kommer det bara att vara nödvändigt att starta PowerShell som administratör och en gång i fönstret skriva följande kommando:

Get-Scheduled Task

PowerShell använder som Get-ScheduledTask

Genom att endast använda det grundläggande kommandot kommer alla uppgifter på datorn att listas sorterade efter sökväg. Vi kan se hur sökvägen till uppgiften ingår, uppgiftens namn och tillståndet den är i. Med hjälp av namnet kan vi identifiera uppgiften medan tillståndssektionen (State) kommer att indikera om den är aktiverad eller avaktiverad.

I PowerShell kan vi också inaktivera eller aktivera de valda uppgifterna, genom att använda kommandona Disable-ScheduledTask och Enable-ScheduledTask. Om vi ​​utför kommandona direkt, kommer det att vara nödvändigt att vi specificerar namnet på uppgiften eller rutterna.

Om vi ​​till exempel vill inaktivera uppgifter relaterade till Google kommer vi att använda kommandot Disable-ScheduledTask, som ansvarar för att inaktivera det. För detta skriver vi följande kommando.

Get-ScheduledTask -uppgiftsnamn google* | Inaktivera-ScheduledTask

PowerShell använder kommandot Disable-ScheduledTask

I händelse av att vi vill aktivera alla Google-uppgifter kommer vi att använda kommandot vi kommer att använda samma kommandorad ovan förutom att vi i det här fallet kommer att använda Enable-ScheduledTask i slutet, som kommer att ansvara för att beställa aktiveringen av uppgiften.

Get-ScheduledTask -uppgiftsnamn google* | Aktivera-ScheduledTask

PowerShell Enable-ScheduledTask