Hvorfor konvertere VBS til PS1?
Microsoft har udfaset VBScript - i Windows 11 24H2 blev det en valgfri funktion, og Microsoft planlægger at stoppe med at aktivere det som standard omkring 2027 og derefter fjerne det helt. PowerShell følger med Windows og er den officielle erstatning for Windows-automatisering; ethvert .vbs-script, der skal fortsætte med at fungere, bør omskrives som .ps1 nu.
Sådan konverterer du VBS til PS1
Visual Studio Code FREE
Åbn din .vbs og en ny .ps1-fil i delt visning; VS Code tilbyder syntaksfremhævning for begge sprog og gør side-om-side omskrivning ligetil.
Notepad++ FREE
Åbn din .vbs og den nye .ps1 side om side i Notepad++'s multivindue-visning for at portere hver sektion manuelt; Notepad++ har indbygget syntaksfremhævning for både VBScript og PowerShell.
Om disse formater
En VBS-fil er et VBScript - kildekode i almindelig tekst, som Windows kører med sin indbyggede Windows Script Host. Dobbeltklik på en .vbs udfører den med det samme; den åbner den ikke. For…
Åbn .VBS detaljer →En PS1-fil er et Windows PowerShell-script - en almindelig tekstfil med kommandoer, der automatiserer opgaver på Windows, macOS eller Linux. På Windows skal du højreklikke på den og vælge…
Åbn .PS1 detaljer →Kvalitet & hvad man skal være opmærksom på
- Almindelige mappings:
CreateObject(„Scripting.FileSystemObject“)bliver til indbyggede cmdlets såsomGet-ItemogCopy-Item;WScript.Echobliver tilWrite-Output;For Each-løkker bliver tilforeach-løkker med opdateret syntaks. - Hvis eksekveringspolitikken blokerer din
.ps1ved første kørsel, skal du brugeSet-ExecutionPolicy RemoteSigned -Scope CurrentUseri PowerShell. - Der findes ingen dedikeret VBS-til-PS1 konverter; AI-assistenter kan udarbejde et PowerShell-udkast for korte scripts, men resultatet kræver altid gennemgang og test.
Ofte stillede spørgsmål
Findes der en automatisk VBS-til-PowerShell konverter?
Hvorfor ikke bare beholde `.vbs`-filen?
.vbs-scripts vil med tiden holde op med at virke.Kan COM-objektkald oversættes til PowerShell?
New-Object -ComObject til COM-adgang, så kald til WScript.Shell kan ofte erstattes med New-Object -ComObject WScript.Shell.