【问题标题】:The term 'System.DefaultWorkingDirectory' is not recognized as the name of a cmdlet术语“System.DefaultWorkingDirectory”未被识别为 cmdlet 的名称
【发布时间】:2019-03-01 07:10:10
【问题描述】:

我正在尝试使用 VSTS 发布作业使用 powershell 生成 CSV 文件并将其存储到当前工作目录。奇怪的是相同的代码以前可以正常工作。唯一的区别是以前我使用内联脚本,但现在我使用文件路径。

$results = @()

$data = 
@{                       
    uname = $uname             
    upass = "Apple@123"
    uid = $uid    
}

$results += New-Object PSObject -Property $data 

$results | export-csv -Path $(System.DefaultWorkingDirectory)\1UserTestDocument.csv -NoTypeInformation 

write-host "Print all files in the current directory :"
Get-Item *

错误:

2019-03-01T06:56:19.2333832Z VERBOSE: Importing function 'CmdletHasMember'.
2019-03-01T06:56:19.2515776Z VERBOSE: Importing function 'Disconnect-AzureAndClearContext'.
2019-03-01T06:56:19.2515900Z VERBOSE: Importing function 'Initialize-AzModule'.
2019-03-01T06:56:19.2515985Z VERBOSE: Importing function 'Initialize-Azure'.
2019-03-01T06:56:19.2516046Z VERBOSE: Importing function 'Initialize-AzureRMModule'.
2019-03-01T06:56:19.2516153Z VERBOSE: Importing function 'Remove-EndpointSecrets'.
2019-03-01T06:56:19.2516240Z VERBOSE: Trying to disconnect from Azure and clear context at process scope
2019-03-01T06:56:19.2516312Z ##[command]Disconnect-AzureRmAccount -Scope Process -ErrorAction Stop
2019-03-01T06:56:19.7421197Z ##[command]Clear-AzureRmContext -Scope Process -ErrorAction Stop
2019-03-01T06:56:20.2546250Z ##[debug]Caught exception from task script.
2019-03-01T06:56:20.2796129Z ##[debug]Error record:
2019-03-01T06:56:20.2985848Z ##[debug]ForEach-Object : The term 'System.DefaultWorkingDirectory' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
2019-03-01T06:56:20.3038684Z ##[debug]At D:\a\_tasks\AzurePowerShell_72a1931b-effb-4d2e-8fd8-f8472a07cb62\3.1.23\AzurePowerShell.ps1:125 char:9
2019-03-01T06:56:20.3044174Z ##[debug]+         ForEach-Object {
2019-03-01T06:56:20.3217983Z ##[debug]+         ~~~~~~~~~~~~~~~~
2019-03-01T06:56:20.3218533Z ##[debug]    + CategoryInfo          : ObjectNotFound: (System.DefaultWorkingDirectory:String) [ForEach-Object], CommandNotFoun    dException
2019-03-01T06:56:20.3218704Z ##[debug]    + FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Commands.ForEachObjectCommand

[错误]术语“System.DefaultWorkingDirectory”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,如果包含路径,请验证路径是否正确,然后重试。

【问题讨论】:

  • 可以参考这个链接:stackoverflow.com/questions/39905758/…
  • 不走运。再次出现相同的错误消息。 2019-03-01T07:28:17.2933434Z ##[错误]术语“System_DefaultWorkingDirectory”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,如果包含路径,请验证路径是否正确,然后重试。
  • 那个电话是 >> $(System.DefaultWorkingDirectory) 特定于 azure powershell 吗?因为它不存在于标准的 powershell ...
  • @Lee_Dailey 其 vsts 令牌
  • @4c74356b41 - 啊!谢谢你的信息!我很困惑... [咧嘴笑]

标签: powershell azure-devops


【解决方案1】:

您必须使用$env:variable_name_with_underscores_instead_of_dots 来检索它。

在你的情况下:

$env:System_DefaultWorkingDirectory

【讨论】:

    猜你喜欢
    • 2019-10-12
    • 2017-12-11
    • 2021-12-09
    • 2020-02-25
    • 2020-04-17
    • 2018-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多