Personally I don't trust it anywhere, and I can't justify any reason to. The pipe command does not require spacing, and with that logic, its best to avoid what is not needed when dealing with script language interpretation.
But yes, my failures were specific to CMD batch. But consider this: When you use spacing around the pipe, you are also piping that spacing through to the next script function. Depending on what your further intent is in the script, that space may not be wanted or interpreted as expected. Unless you intentionally want to pipe a space along, its advisable not to buffer the command with it. There really shouldnt be spacing around any redirection operators. -- Espi On Mon, Oct 21, 2013 at 11:16 AM, Tim Evans <[email protected]> wrote: > I've never run across it either, but I'm guessing that you are referring > to pipe processing by cmd.exe. Does it make any difference that this is > powershell here? I'd like to think that Powershell is a bit more robust > the cmd.**** > > ** ** > > …Tim**** > > ** ** > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Micheal Espinola Jr > *Sent:* Monday, October 21, 2013 11:12 AM > > *To:* [email protected] > *Subject:* Re: [NTSysADM] More PowerShell**** > > ** ** > > I also have used them (spaces around pipes) successfully for decades - up > until I had a failure. I tested the script forwards and backwards for hours > and couldn't find any syntax problems. I ran the statements separately, and > they worked fine - but all together in a batch script, it would fail. As a > last resort I opted to remove all truly unnecessary spacing. That fixed > the failure, and the script worked successfully. I have encountered this > issue a few times in the past 5 years. Particularly with scripts that are > suited for use across multiple platforms.**** > > ** ** > > I would say that in simpler scripts, there is certainly less likelihood of > a problem, but in more complex scripts there is. Because of this, I would > recommend against the practice all together.**** > > > **** > > -- > Espi**** > > **** > > ** ** > > On Mon, Oct 21, 2013 at 9:31 AM, Webster <[email protected]> wrote:* > *** > > I have always used a space before and after piping and redirection. Don’t > ever recall an issue doing so in 38 years.**** > > **** > > Thanks**** > > **** > > **** > > Webster**** > > **** > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Micheal Espinola Jr > *Sent:* Monday, October 21, 2013 11:26 AM**** > > > *To:* [email protected] > *Subject:* Re: [NTSysADM] More PowerShell**** > > **** > > I dont recommend spaces before/after pipes ( | ). In certain scenarios, it > can cause malfunction in scripts.**** > > > **** > > -- > Espi**** > > **** > > **** > > On Mon, Oct 21, 2013 at 9:17 AM, Aakash Shah <[email protected]> wrote:* > *** > > Unless I am misunderstanding you, the command for that would be:**** > > **** > > "class rte`n{`n`tstatic void Main() > {`n`t`tSystem.Threading.Thread.Sleep(2000);`n`t}`n}" | Out-File > “c:\trigger.ps1”**** > > **** > > This will give you a file that is formatted as show below (I assume by > formatting, you were referring to the new lines and tabs).**** > > **** > > -Aakash Shah**** > > **** > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *James Rankin > *Sent:* Monday, October 21, 2013 9:04 AM**** > > > *To:* [email protected] > *Subject:* Re: [NTSysADM] More PowerShell**** > > **** > > OK, Ken's idea might be workable - but I still need to create the .cs text > file dynamically somehow to feed into csc.exe**** > > **** > > Can I do that in PowerShell? (Actually I know I can) But it's the > formatting that's defeating me now :-( How would I create a text file in PS > and format it correctly to get this text in**** > > **** > > *class rte***** > > *{***** > > * static void Main() {***** > > * System.Threading.Thread.Sleep(2000);***** > > * }***** > > *}***** > > **** > > I seem to be getting plenty of Google hits on feeding text in from other > files, but that defeats the object**** > > **** > > **** > > TIA,**** > > **** > > **** > > **** > > JRR**** > > **** > > On 19 October 2013 00:05, Ken Schaefer <[email protected]> wrote:**** > > Why can’t you call vbc.exe or csc.exe (command line VB.NET / C#.NET > compilers)?**** > > **** > > Then you’d just need a VB.NET or C# source file that just does a Sleep in > the Main() function and exits.**** > > **** > > Cheers**** > > Ken**** > > **** > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Rankin, James R > *Sent:* Saturday, 19 October 2013 3:27 AM**** > > > *To:* [email protected] > *Subject:* Re: [NTSysADM] More PowerShell**** > > **** > > Not sure of the exact terminology required....basically uses some .Net > functions to create an executable, in the example I have.**** > > > > I can run the script as System, so it functions OK with the privilege > required. > > Cheers, > > > JR**** > > Sent from my BlackBerry, which may make me an antiques dealer, but it's > reliable as hell for email delivery :-)**** > ------------------------------ > > *From: *"Michael B. Smith" <[email protected]> **** > > *Sender: *[email protected]**** > > *Date: *Fri, 18 Oct 2013 16:23:29 +0000**** > > *To: *[email protected]<[email protected]>**** > > *ReplyTo: *[email protected] **** > > *Subject: *RE: [NTSysADM] More PowerShell**** > > **** > > So you don’t actually mean “compiles an executable”. You mean “compiles a > source file into an executable”. Is that correct?**** > > **** > > You are aware that placing the executable in %ProgramFiles% is a high > privilege operation?**** > > **** > > *From:* [email protected] [ > mailto:[email protected] <[email protected]>] *On > Behalf Of *James Rankin > *Sent:* Friday, October 18, 2013 9:35 AM > *To:* [email protected] > *Subject:* Re: [NTSysADM] More PowerShell**** > > **** > > Just to redefine, then...**** > > **** > > I am looking for a script (PowerShell, VB or JScript will do) that creates > an executable in a specified place. The compiled executable code does > nothing but pauses for a second or two and then closes.**** > > **** > > The one I currently have does this:-**** > > **** > > Compiles an executable that will run for a couple of seconds then exit**** > > Creates the executable file called xxx.exe in %ProgramFiles%\xxx**** > > **** > > This is all I actually need it to do - I am using it as a kind of > user-defined trigger for other actions.**** > > **** > > On 18 October 2013 14:32, Michael B. Smith <[email protected]> wrote:* > *** > > I'm wondering if I also misunderstood. Would you say more? > > Sent from my Windows Phone**** > ------------------------------ > > *From: *Manuel Santos <[email protected]> > *Sent: *10/18/2013 9:29 AM > *To: *[email protected] > *Subject: *Re: [NTSysADM] More PowerShell**** > > Hi James. I am not quite sure on what you want. Can you please PM me, as I > might have a solution for you. **** > > Thanks**** > > **** > > 2013/10/18 James Rankin <[email protected]>**** > > Hmmm, bummer. I thought I was just getting hit by a lot of Google-chaff > because every link I could find simply talks about creating an executable > from a PS script, which is obviously not what I want. Rather frustrating > when you know it's possible because I've got code that works but can't use > it :-(**** > > **** > > On 18 October 2013 14:02, Michael B. Smith <[email protected]> wrote:* > *** > > I’ve got 3 different ways of doing this, all work for hire (which means it > can’t be shared). I don’t know of anyone that did this and placed it in the > public domain. If you find one, let me know too. J**** > > **** > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *James Rankin > *Sent:* Friday, October 18, 2013 7:09 AM > *To:* [email protected] > *Subject:* [NTSysADM] More PowerShell**** > > **** > > A guy I knew once gave me a bit of PowerShell which would compile an > executable on an endpoint. The executable did nothing except run for a > couple of seconds and then exit, which was exactly what I needed.**** > > **** > > Unfortunately I am now putting together a blog post which utilizes this > handy function but the guy who wrote it is unwilling for me to use his > code, even with a credit. So I thought I'd Google about and try and find my > own way of doing it.....but I can't find anything I can make head or tail > of.**** > > **** > > Can anyone point me in the direction of some PS that can do this sort of > thing, so I can put together my own bit of code for the blog post?**** > > **** > > Cheers,**** > > **** > > > **** > > **** > > -- > *James Rankin* > Technical Consultant (ACA, CCA, MCTS) > http://appsensebigot.blogspot.co.uk**** > > > > **** > > **** > > -- > *James Rankin* > Technical Consultant (ACA, CCA, MCTS) > http://appsensebigot.blogspot.co.uk**** > > **** > > > > **** > > **** > > -- > *James Rankin* > Technical Consultant (ACA, CCA, MCTS) > http://appsensebigot.blogspot.co.uk**** > > > > **** > > **** > > -- > *James Rankin* > Technical Consultant (ACA, CCA, MCTS) > http://appsensebigot.blogspot.co.uk**** > > **** > > ** ** >

