title: Invoke-Expression: Positional parameter cannot be found that accepts argument /s
body: <p>I have a .ps1 script which contains a line</p>
  
  <pre><code>Invoke-Expression -Command "C:\Builds\$BuildName /s /v`"/l*v c:\build_install.txt /qn`""&lt;br/&gt;
  </code></pre>
  
  <p>This is performing Silent installation of a product.<br/></p>
  
  <p>Now, if I try to run this command from Linux box through ssh it gives the following error:</p>
  
  <pre><code>Invoke-Expression : A positional parameter cannot be found that accepts argument '/s'.
  At line:1 char:1
  + Invoke-Expression C:\NWTBuilds\Setup-NimbleNWT-x64.2.0.4.117.exe /s /v`/l*v c:\n ...
  + CategoryInfo          : InvalidArgument: (:) [Invoke-Expression], ParameterBindingException
  + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.InvokeExpressionCommand
  </code></pre>
  
  <p>Do you have any suggestions on this? Do I need to provide any credentials?</p>
  
  <p>So I have also tried the following options:</p>
  
  <ol>
  <li>Send the command through ssh or telnet <code>powershell.exe -Command ...</code></li>
  <li>Call the powershell Script from ssh or telnet <code>powershell.exe -File C:\Sample.ps1</code></li>
  </ol>
  
  <p>However If I ran the same <code>Sample.ps1</code> from windows Powershell, silent installation is done?</p>