12

I was wondering is it possible to pass a tiny script into the ScriptBlock parameter but do it all in one line?

For instance, I want to run the following 2 commands:

import-module lync get-csuser

I can do this if I have a powershell script file and call that file explicitly. The contents of the script look like this

invoke-command -ComputerName mycomputer.mylab.com -ScriptBlock {
import-module lync
get-csuser
}

I want to be able to do the above without putting this into a temporary script file and do it on one lime. Is this possible?

Thanks

NullPointer
  • 2,084
  • 7
  • 24
  • 38

1 Answers1

20

You can use ; to do this. In PowerShell, the semicolon is a statement separator and allows you to use multiple statements on the same line.

invoke-command -ComputerName mycomputer.mylab.com -ScriptBlock { import-module lync ; get-csuser }

The semi-colon is among a handy set of characters that you can use to format things to your needs. Another example is using a backtick to split a command across multiple lines.

Community
  • 1
  • 1
Anthony Neace
  • 25,013
  • 7
  • 114
  • 129