连接/合并/加入/添加内容无法正常工作

时间:2017-05-16 20:27:16

标签: powershell powershell-v2.0 powershell-v3.0

我有一个文本文件,其中包含一些内容,如下面提到的会话ID,这可以是n个数字。

session1
Session2
Session3
.
.
Session n

通过使用上面的会话ID,我需要生成并触发命令并将输出提取到另一个文件中。


    omnidb -session session1 -detail | findstr "Object"
    omnidb -session session2 -detail | findstr "Object"
    omnidb -session sessionn -detail | findstr "Object"

请帮助我使用它生成的文本文件contenet在PowerShell中编写脚本并触发命令。 的更新 我尝试了很多参数,比如Join&连接但我没有获得所需的输出。在我使用的脚本下面但不起作用。


    $line1= get-content C:\line1.txt $line2= get-content C:\line2.txt 
    $linesession= get-content C:\sesopt0.txt 
    $( $line1," ",$linesession," ",$line2) | Set-Content C:\sesopt1.txt 

通过使用此参数,我得到的输出就像。

omnidb -session 
session1 
session2 
session3 
. 
session n 
-detail | findstr "Object"

哪个不符合预期。它应该使用file来触发单行命令并生成输出。请提供您的专家观点。提前致谢 的更新 刚才我尝试使用下面的脚本,它在控制台中生成输出但不发送到文件,这样我就可以使用该文件来运行命令并生成输出。

foreach ($server in (Get-Content C:\sesopt1.txt)) 
{ write-host "omnidb -session $server -detail | findstr 'Object'" > C:\sesopt2.txt } 

请帮助谢谢。

1 个答案:

答案 0 :(得分:0)

Bingo !!

我尝试了自己并找到了结果。谢谢大家。

$seopt2= Get-Content C:\sesopt1.txt
$line2= Get-Content C:\line2.txt
$result=foreach ($server in $seopt2) 
{ Write-Output "omnidb -session $server $line2" } 
$result | Set-Content C:\sesopt2.bat