【问题标题】:How to read variables in Powershell from a GitHub text file如何从 GitHub 文本文件中读取 Powershell 中的变量
【发布时间】:2018-01-23 13:09:38
【问题描述】:

我在 GitHub 中有一个文本文件,位置如下:https://github.com/raw/my-account/my-project/paths.txt

文本文件包含由“=”号分隔的键值对,例如:

key1=value1
key2=value2
key3=value3

我想将这些变量收集到我的 Powershell 脚本中。如果文本文件是本地的,我可以这样做:

Get-Content paths.txt | Foreach-Object{
   $var = $_.Split('=')
   New-Variable -Name $var[0] -Value $var[1]
}

为了从 GitHub 读取文本文件,我尝试用双引号括起来的文本文件的 GitHub 位置替换“paths.txt”。但是,它说找不到驱动器号“https”。

如何从 GitHub 读取文本文件并将变量存储到我的 Powershell 脚本中?

【问题讨论】:

  • 您需要使用Invoke-WebRequest 并探索参数以获得您想要的输出

标签: powershell github


【解决方案1】:

使用ConvertFrom-StringData(3.0+ 版):

$webRequest = Invoke-WebRequest https://github.com/raw/my-account/my-project/paths.txt
$paths = ConvertFrom-StringData -StringData $webRequest.Content

$paths 现在是一个哈希表,输入数据中每个唯一名称都有一个键:

PS C:\> $paths['key1']
value1

【讨论】:

  • 如果 $paths['key1'] 需要在双引号内,我该如何获取值?当放在双引号中时,它正在打印出 System.Collections.Hashtable['key1']。
  • "像这样:$($paths['key1'])"
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-13
  • 1970-01-01
  • 1970-01-01
  • 2020-08-16
  • 2014-03-29
相关资源
最近更新 更多