gpt4 book ai didi

Powershell - 输出到屏幕和日志文件

转载 作者:行者123 更新时间:2023-12-01 12:20:22 26 4
gpt4 key购买 nike

我正在尝试将所有输出写入日志文件,但我似乎做错了什么。我还需要屏幕上的输出。

这是我目前所拥有的:

#  Log file time stamp:
$LogTime = Get-Date -Format "MM-dd-yyyy_hh-mm-ss"
# Log file name:
$LogFile = "EXPORTLOG_"+$LogTime+".log"

$database = "DB"
$schema = "dbo"
$table = "TableName"



foreach($line in Get-Content .\Alltables.txt) {
if($line -match $regex){

$bcp = "bcp $($database).$($schema).$($line) out $line.dat -T -c"
Invoke-Expression $bcp | Out-File $LogFile -Append -Force
}
}

当我想将命令写入日志文件以便知道处理了哪个表时,出现错误:这是代码:

#  Log file time stamp:
$LogTime = Get-Date -Format "MM-dd-yyyy_hh-mm-ss"
# Log file name:
$LogFile = "EXPORTLOG_"+$LogTime+".log"

$database = "DB"
$schema = "dbo"
$table = "TableName"



foreach($line in Get-Content .\Alltables.txt) {
if($line -match $regex){

$bcp = "bcp $($database).$($schema).$($line) out $line.dat -T -c" | Out-File $LogFile -Append -Force
Invoke-Expression $bcp | Out-File $LogFile -Append -Force
}
}

错误:

Invoke-Expression : Cannot bind argument to parameter 'Command' because it is null.
At C:\Temp\AFLAC\export.ps1:16 char:21
+ Invoke-Expression $bcp | Out-File $LogFile -Append -Force
+ ~~~~
+ CategoryInfo : InvalidData: (:) [Invoke-Expression], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.InvokeExpressionCommand

我显然不太擅长使用 Powershell,我需要你的建议,告诉我应该如何以最好的方式编写代码。可能上面的方法是完全错误的,非常感谢您的指导。

谢谢

最佳答案

尝试将您的代码修改为如下内容:

foreach($line in Get-Content .\Alltables.txt) {
if($line -match $regex) {
$bcp_command = "bcp $database" + '.' + $schema '.' + $line + ' out ' + $line + '.dat -T -c')
Tee-Object -FilePath $LogFile -InputObject $bcp_command -Append
$bcp_results = Invoke-Expression $bcp_command
Tee-Object -FilePath $LogFile -InputObject $bcp_results -Append
}
}

关于Powershell - 输出到屏幕和日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44850088/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com