Old 17-06-2008, 06:08 PM   #1 (permalink)
Monster Member
 
scott's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Melbourne
Posts: 4,536
Rep Power: 10
Default Array Help

Just trying to finish my powershell assignment, but even if you can explain how to do it in any language i can prob just grab the concept..

I have a data driven loop that accepts multiple inputs and the stores then in an arary.

Only problem is when i display the array its got all the info on just the one line i need to have it display 1 line for one loop of inputs.

This makes the array
$details +=($type,$description,$price,$quantity)
$count = $count +1

And this is displaying it.
do
{
write-host "item $i is "$details
$i = $i + 1
}
while ($i -lt $count)

Is there something i can add that so it adds another line each time it adds to the array ??

it out puts like this

Scott Field 1 1 Tony Ganly 2 2
Scott Field 1 1 Tony Ganly 2 2

And needs to come out like this
Scott Field 1 1
Tony Ganly 2 2

Thanks
__________________
I live my life one handbrake entry at a time....
scott is offline   Reply With Quote
Old 17-06-2008, 06:18 PM   #2 (permalink)
Monster Member
 
Zer0//'s Avatar
 
Credits: /

Join Date: Jan 2008
Location: Sydney
Age: 19
Posts: 3,035
Rep Power: 7
Send a message via ICQ to Zer0// Send a message via AIM to Zer0// Send a message via MSN to Zer0// Send a message via Yahoo to Zer0//
Default

do
{
write-host "item $i is "$details "</ br>"
$i = $i + 1
}
while ($i -lt $count)


try something like that.
__________________
ching
Zer0// is offline   Reply With Quote
Old 17-06-2008, 06:20 PM   #3 (permalink)
Monster Member
 
scott's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Melbourne
Posts: 4,536
Rep Power: 10
Default

im sorrying html doesnt work in powershell :P
__________________
I live my life one handbrake entry at a time....
scott is offline   Reply With Quote
Old 17-06-2008, 06:23 PM   #4 (permalink)
Monster Member
 
Zer0//'s Avatar
 
Credits: /

Join Date: Jan 2008
Location: Sydney
Age: 19
Posts: 3,035
Rep Power: 7
Send a message via ICQ to Zer0// Send a message via AIM to Zer0// Send a message via MSN to Zer0// Send a message via Yahoo to Zer0//
Default

ah shnap. i have no idea what powershell is >< .

I did bit of google searching.. read this it should fix your problem

How to put line breaks into a text string in Windows Powershell | SearchMarked.com
__________________
ching
Zer0// is offline   Reply With Quote
Old 17-06-2008, 06:24 PM   #5 (permalink)
GotGames Moderator
 
fury's Avatar
 
Credits: /

Join Date: May 2007
Posts: 5,263
Rep Power: 15
Default

google is your friend,

` for line break
__________________
[ep'] furyAU

fury is offline   Reply With Quote
Old 17-06-2008, 06:27 PM   #6 (permalink)
Monster Member
 
scott's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Melbourne
Posts: 4,536
Rep Power: 10
Default

Doesnt work with arrays :P
__________________
I live my life one handbrake entry at a time....
scott is offline   Reply With Quote
Old 17-06-2008, 06:27 PM   #7 (permalink)
GotGames Moderator
 
fury's Avatar
 
Credits: /

Join Date: May 2007
Posts: 5,263
Rep Power: 15
Default

do
{
write-host "item $i is "$details `
$i = $i + 1
}
while ($i -lt $count)

try that
__________________
[ep'] furyAU

fury is offline   Reply With Quote
Old 17-06-2008, 06:28 PM   #8 (permalink)
Monster Member
 
Zer0//'s Avatar
 
Credits: /

Join Date: Jan 2008
Location: Sydney
Age: 19
Posts: 3,035
Rep Power: 7
Send a message via ICQ to Zer0// Send a message via AIM to Zer0// Send a message via MSN to Zer0// Send a message via Yahoo to Zer0//
Default

Well im no help lol

javascript and php is better :P
also ajax is badass **** but complicated ><
__________________
ching
Zer0// is offline   Reply With Quote
Old 17-06-2008, 06:30 PM   #9 (permalink)
Monster Member
 
scott's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Melbourne
Posts: 4,536
Rep Power: 10
Default

Yeah the problem is with the array itself not printing it so doing that will just display the array twice is a line break under it.

Thanks neway i think ill try go about it a dif way
__________________
I live my life one handbrake entry at a time....
scott is offline   Reply With Quote
Old 17-06-2008, 06:31 PM   #10 (permalink)
GotGames Moderator
 
fury's Avatar
 
Credits: /

Join Date: May 2007
Posts: 5,263
Rep Power: 15
Default

hmm i see GL!
__________________
[ep'] furyAU

fury is offline   Reply With Quote
Old 17-06-2008, 06:43 PM   #11 (permalink)
New Member
 
Credits: /

Join Date: Jul 2006
Posts: 6
Rep Power: 0
Default

can you not just add \n to your output?

works in c# formats to force new line...

cant you also use VB.net or C# commands within powershell and interact with the objects the same way you would as if it was a win/asp app?
MiMiX is offline   Reply With Quote
Old 17-06-2008, 07:12 PM   #12 (permalink)
Monster Member
 
scott's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Melbourne
Posts: 4,536
Rep Power: 10
Default

Okay well im going about it a different way now.

this makes the array
$details =($type,$description,$price,$quantity)
this outputs the array to a txt file
$details | out-file test.txt
but the out put of the txt file is this
Scott
lol
1
2

and i want them to all be side by side.
ne idea
__________________
I live my life one handbrake entry at a time....
scott is offline   Reply With Quote
Old 17-06-2008, 07:26 PM   #13 (permalink)
Member
 
Credits: /

Join Date: Jul 2006
Location: Perth
Posts: 141
Rep Power: 0
Default

What about using an if or while loop to check if it should print a newline or not? That way you could include an endline character of your own and tell it to only print a new line if it encounters the character? Might be using more system overhead than you want though... It could at least be a starting point for a more efficient solution.
__________________
Intel Core i7 860 | Gigabyte P55A UD6 | 2x2GB XMS3 1600mhz | 2x500GB WD Black SATA2 RAID0 | XFi Fatality | eVGA GTX285 | TJ10 + Corsair 1KW | Samsung P2370 | Ikari + Goliathas
reLive Subaru is offline   Reply With Quote
Old 17-06-2008, 09:10 PM   #14 (permalink)
New Member
 
Credits: /

Join Date: Jul 2006
Posts: 6
Rep Power: 0
Default

instead of piping to out-file, why not set the input object by the parameter provided? Not sure if that will fix it?

eg: out-file test.txt -inputobject $details
MiMiX is offline   Reply With Quote
Old 17-06-2008, 10:00 PM   #15 (permalink)
Pro Member
 
chemicalNova's Avatar
 
Credits: /

Join Date: Jun 2006
Posts: 6,171
Rep Power: 12
Default

Sorry.. how is AJAX complicated?

Haha scott.. I wasn't on MSN between work and now so you had to post. SUCKS2BU.

Also.. I've known about powershell for like, 3 weeks now.. and I don't think I like it.

chem
__________________
There are no stupid questions... but there are alot of inquisitive idiots.
-
chemicalNova is offline   Reply With Quote
Old 18-06-2008, 05:25 PM   #16 (permalink)
Ivo
GotGames Moderator
 
Ivo's Avatar
 
Credits: /

Join Date: Jun 2006
Location: Vic
Posts: 5,071
Rep Power: 20
Default

Do a string merge of $type,$description,$price,$quantity, then output that to the file.

like $details = $type " " $description " " $price " " $quantity
or <insert loop here> $details[i] = $type[i] " " $description[i] " " $price[i] " " $quantity[i]

or something
__________________


"It wasn't a DDOS." - xr6_turbo, on syntax
[ep'] Ivoz - BC2
Ivo is offline   Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +10. The time now is 04:51 AM.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.5.1
no new posts