Avatar of hypercube
Flag for United States of America asked on

"Bootstrapping" powershell scripts

I'm trying to set up all the necessary WMI settings for monitoring a workstation by running a local powershell script.
It's going pretty well.  I'm at the stage where it's about ready for production.

Remaining to solve:
I have all the files on a file share and can copy and import modules from there.  
But the workstations aren't set to run scripts.  So I need to first set them up for "unrestricted" as none of my scripts are signed.
(Then I can set them back to "undefined" when I'm finished).
Ideally, I think I'd want to do everything from a single command or desktop shortcut.
(This must be a fairly typical objective).

So how might you suggest I do that?
Right now I have to run some powershell commands to get things started.
While *I* can do that, it's more tedious and not so "exportable" to others.

For example:
Set-ExecutionPolicy Unrestricted
         (and respond "A")
Copy "\\server\c\\Scripts\MyScript.ps1" "$($Env:Temp)"
Import-Module "$($Env:Temp)\MyScript.ps1"

How to fire off all 3 commands without having to type them all and give a response as well?
A simple one-liner would be great!

Avatar of undefined
Last Comment

8/22/2022 - Mon

You can temporarily bypass the execution policy to run a script.
Powershell.exe -ExecutionPolicy Bypass -Command C:\Users\Username\Desktop\Test.ps1

Open in new window


and if the .ps1 file is on a server?
I tried that and it didn't like it. A folder in the server path has spaces in its name and the error seems related to that.  I tried using double quotes around the string and around the foldername and neither helped.  Sorry I'm so new at this...

I do presume that the example you gave would be run from within PowerShell as that seems to almost work.

You can run the line from a batch file, a link, PowerShell or whatever.

I would use
Powershell.exe -ExecutionPolicy Bypass -File 'C:\Users\User name\Desktop\Test.ps1'

Open in new window

which works with spaces.
This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.

For using -Command you would have to write
-Command '& "C:\Users\User name\Desktop\Test.ps1" '

Open in new window


As Qlemo mentioned -File should work

-Command should be..
-Command "& 'C:\Users\User name\Desktop\Test.ps1'"

Open in new window


I tried this on the local computer:
powershell.exe -ExecutionPolicy Bypass -Command C:\Start_WMI.ps1

Open in new window

and this worked.

Then I tried it back on the server like this:
powershell.exe -ExecutionPolicy Bypass -Command  '&"\\\c\0 AA Scanner\Scripts\Start_WMI.ps1"'

Open in new window

This one still gets stuck with this error:
& : The term '\\\c\0' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:2
+ &\\\c\0 AA Scanner\Scripts\Start_WMI.ps1
+  ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (\\\c\0:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Open in new window

So, it seems that the [zero] [space] remains an issue.
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question
Log in to continue reading
Log In
Sign up - Free for 7 days
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.