Re: PHP and Powershell

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thank you for your clarification.

Have you considered placing the whole powershell -command parameter in a
.ps1 script and executing that instead?

The benefit would be that it is easier to read and test accordingly.

HTH

Kind regards/met vriendelijke groet,

Serge Fonville

http://www.sergefonville.nl

Convince Microsoft!
They need to add TRUNCATE PARTITION in SQL Server
https://connect.microsoft.com/SQLServer/feedback/details/417926/truncate-partition-of-partitioned-table


2013/7/19 Alan Loos <Alan.Loos@xxxxxxxxx>

>  According to Technet it is not required (
> http://technet.microsoft.com/en-us/library/hh849719.aspx) as the default
> would be ‘localhost’ which is the same as 127.0.0.1.****
>
> ** **
>
> So you are correct it is not required. However when I take away
> ‘-computername 127.0.0.1’ I get a return of:****
>
> Array****
>
> (****
>
>     [0] => Invoke-Command : Parameter set cannot be resolved using the
> specified named****
>
>     [1] => parameters.****
>
>     [2] => At line:1 char:172****
>
>     [3] => + $cred = New-Object System.Management.Automation.PSCredential
> -ArgumentList****
>
>     [4] => @('ad ...****
>
>     [5] => +
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ****
>
>     [6] => ~~~****
>
>     [7] =>     + CategoryInfo          : InvalidArgument: (:)
> [Invoke-Command], Parameter****
>
>     [8] =>    BindingException****
>
>     [9] =>     + FullyQualifiedErrorId :
> AmbiguousParameterSet,Microsoft.PowerShell.Comma****
>
>     [10] =>    nds.InvokeCommandCommand****
>
>     [11] => ****
>
> )****
>
> ** **
>
> End Of Scene****
>
> ** **
>
> For whatever reason, the powershell command does not want to execute
> properly without that variable being defined explicitly.****
>
> ** **
>
> (Not sure if that is what you are asking exactly but I think that was
> answering the question, if not let me know and I’ll try to answer the best
> I can)****
>
> ** **
>
> Thanks in advance!****
>
> ** **
>
> *Alan Loos* ****
>
> ** **
>
> CONFIDENTIALITY NOTICE: This e-mail and the attachment(s) hereto (if any)
> contain confidential information that is privileged and intended only for
> the addressee(s) hereof. If you are not an intended recipient, you are
> hereby notified that any disclosure, copying, distribution or use of this
> e-mail and/or the accompanying attachment(s) is strictly prohibited. If you
> have received this e-mail in error, please immediately notify the sender by
> return e-mail.****
>
> ** **
>
> *From:* Serge Fonville [mailto:serge.fonville@xxxxxxxxx]
> *Sent:* Friday, July 19, 2013 11:13 AM
>
> *To:* Alan Loos
> *Cc:* php-general@xxxxxxxxxxxxx
> *Subject:* Re:  PHP and Powershell****
>
> ** **
>
> How have you determined that invoke-command requires -computername?
>
> ****
>
> Kind regards/met vriendelijke groet,****
>
> ** **
>
> Serge Fonville****
>
> ** **
>
> http://www.sergefonville.nl
>
> Convince Microsoft!****
>
> They need to add TRUNCATE PARTITION in SQL Server****
>
>
> https://connect.microsoft.com/SQLServer/feedback/details/417926/truncate-partition-of-partitioned-table
> ****
>
> ** **
>
> 2013/7/19 Alan Loos <Alan.Loos@xxxxxxxxx>****
>
> Thank you for your response Serge!****
>
>   The computer name  is for the invoke-command, ComputerName has to be
> specified to tell the computer where the command is to be routed. Since I
> want this to run locally over PHP I figured that it would be a good way to
> avoid running a script as I have read online that when it can be avoided
> it’s a good practice (I also couldn’t get this to work properly… J But
> that is a side note). The piece that outputs the extra RunSpaceID and the
> PSComputerName is the $_.Status portion of everything.****
>
>  ****
>
> If someone knows how to cut it out that would be fine but really I just
> need to pull the Target Name and the Value from result. For the attached
> example it would be $IQNTarget = iqn.2013-04.com.widget:Target1 and $Value
> = NotConnected (Which there are two options for this which is Connected or
> NotConnected).****
>
>  ****
>
> To use Select Object here would I do Select-Object $Value?****
>
>  ****
>
> *Alan Loos*****
>
>  ****
>
> CONFIDENTIALITY NOTICE: This e-mail and the attachment(s) hereto (if any)
> contain confidential information that is privileged and intended only for
> the addressee(s) hereof. If you are not an intended recipient, you are
> hereby notified that any disclosure, copying, distribution or use of this
> e-mail and/or the accompanying attachment(s) is strictly prohibited. If you
> have received this e-mail in error, please immediately notify the sender by
> return e-mail.****
>
>  ****
>
> *From:* Serge Fonville [mailto:serge.fonville@xxxxxxxxx]
> *Sent:* Friday, July 19, 2013 3:05 AM
> *To:* Alan Loos
> *Cc:* php-general@xxxxxxxxxxxxx
> *Subject:* Re:  PHP and Powershell****
>
>  ****
>
> Hi,
>
> Although this is more powershell related than PHP...
>
> When Powershell returns an object, you can pipe the output through
> Select-Object to get only certain object properties.
>
> To better answer your question:
> First, why do you specify ComputerName as 127.0.0.1 if the credential is
> already specified?
> Also, perhaps it is easier to create a .ps1 file that you run, especially
> for readability.
>
> HTH
>
> Wh
>
> ****
>
> Kind regards/met vriendelijke groet,****
>
>  ****
>
> Serge Fonville****
>
>  ****
>
> http://www.sergefonville.nl
>
> Convince Microsoft!****
>
> They need to add TRUNCATE PARTITION in SQL Server****
>
>
> https://connect.microsoft.com/SQLServer/feedback/details/417926/truncate-partition-of-partitioned-table
> ****
>
>  ****
>
> 2013/7/18 Alan Loos <Alan.Loos@xxxxxxxxx>****
>
> Good morning everyone,
>   First time posting in here, although I've been listening in for a few
> weeks now.
> So this one has got me stumped, I am fairly new to PHP but I cannot seem
> to Google through this one.
> I cannot figure out how to 'exclude' PSComputerName and RunspaceId, which
> is ultimately what I'm struggling with. Please see below for script snips
> and explanations.
>
> Also if there are any best practices you would recommend I'm open to it
> being that I am fairly new and self-taught to PHP scripting.
>
>
> I have a bit of code I've put together (as ugly as it is) as follows in
> line:
> <?php
>
>
> ###############
> ## Variables ##
> ###############
>
> $TargetName = "Target1";
> $login = "\$cred = New-Object System.Management.Automation.PSCredential
> -ArgumentList @('administrator@xxxxxxxxxx',(ConvertTo-SecureString
> -String 'MyPassword' -AsPlainText -Force))";
> $command = "Invoke-Command -computername 127.0.0.1 -credential \$cred
> -scriptblock {& Get-IscsiServerTarget -TargetName " . $TargetName . " | % {
> \$_.TargetIqn, \$_.Status}} -SessionOption (New-PSSessionOption
> -SkipCACheck -SkipCNCheck -SkipRevocationCheck)";
> $psCMD = "powershell -ExecutionPolicy Unrestricted -command \"$login;
> $command\" <NUL";
>
>
> ########################################
> ## Variable Checking (For Debug Mode) ##
> ########################################
>
> #echo "\$psCMD = $psCMD";
>
>
> ################
> ## Run Script ##
> ################
>
> exec($psCMD,$out);
>
>
> ############
> ## Output ##
> ############
>
> echo ('<pre>');
> print_r($out);
> echo ('</pre>');
>
>
> ###################
> ## End Of Script ##
> ###################
>
> echo "End Of Scene";
>
> ?>
>
> The issue I have is that it feeds back:
>
> Array
> (
>     [0] => iqn.2013-04.com.widget:Target1
>     [1] =>
>     [2] => PSComputerName             RunspaceId                 Value
>     [3] => --------------             ----------                 -----
>     [4] => 127.0.0.1                  52fb8b1b-8d8b-4eec-9419...
> NotConnected
>     [5] =>
>     [6] =>
> )
>
> End Of Scene
>
> What I should see so I can then turn it into variables is what I run when
> I run the command straight through the local Powershell command prompt
> which would return:
> PS C:\Users\administrator.WIDGET.000> Get-IscsiServerTarget | % {
> $_.TargetIqn, $_.Status}
> iqn.2013-04.com.widget:Target1
> NotConnected
> iqn.2013-04.com.widget:Target2
> NotConnected
> iqn.2013-04.com.widget:Target3
> NotConnected
> iqn.2013-04.com.widget:Target4
> Connected
> iqn.2013-04.com.widget:Target5
> NotConnected
> iqn.2013-04.com.widget:Target6
> NotConnected
>
> I cannot figure out how to 'exclude' PSComputerName and RunspaceId
>
> Sorry in advance for the wordy explanation.
>
> Cheers!
>
> Alan
>
>
> Please make note of my new email address: Alan.Loos@xxxxxxxxx.
>
> CONFIDENTIALITY NOTICE: This e-mail and the attachment(s) hereto (if any)
> contain confidential information that is privileged and intended only for
> the addressee(s) hereof. If you are not an intended recipient, you are
> hereby notified that any disclosure, copying, distribution or use of this
> e-mail and/or the accompanying attachment(s) is strictly prohibited. If you
> have received this e-mail in error, please immediately notify the sender by
> return e-mail.****
>
>  ****
>
> ** **
>

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux