2009-12-16 60 views
3

我只是爲了一些測試目的而產生了一個很長的xml序列,很多元素 像<小時> 2009.10.30.00 < /小時>。在PowerShell中生成文本序列

這讓我掉進一個Linux shell,只是運行

for day in $(seq -w 1 30) ; do 
    for hour in $(seq -w 0 23) ; 
    do echo "<hour>2009.10.$day.$hour</hour>" ; 
    done ; 
done >out 

我怎麼會做同樣在PowerShell中的窗口?

回答

3

非常相似......

$(foreach ($day in 1..30) { 
    foreach ($hour in 0..23) { 
     "<hour>2009.10.$day.$hour</hour>" 
    } 
}) > tmp.txt 

添加的文件重定向。如果你熟悉bash,語法應該很直觀。

+0

如何將輸出重定向到文件? – Anonym

3

如果我正在編寫腳本,我可能會使用orsogufo的方法來提高可讀性。但是如果我在交互式控制檯上輸入這個信息,我會使用管道方法 - 減少輸入並且適合單行。例如:

1..30 | %{$day=$_;0..23} | %{"<hour>2009.10.$day.$_</hour>"} > tmp.txt 
+0

與Foreach-Object cmdlet(%)一起使用管道比使用'foreach'語句更像PowerShell。 在腳本中,如果需要,可將'%'替換爲'foreach',並分成多行。 –