にファイルを読む:プロパティはのは、私がfile.propertiesを持っており、その内容があることを仮定しようPowerShellの
app.name=Test App
app.version=1.2
...
は、どのように私はapp.nameの値を得ることができますか?
にファイルを読む:プロパティはのは、私がfile.propertiesを持っており、その内容があることを仮定しようPowerShellの
app.name=Test App
app.version=1.2
...
は、どのように私はapp.nameの値を得ることができますか?
あなたはConvertFrom-を使用することができますStringDataは、ハッシュテーブルにキー=値のペアを変換するには:あなたはあなたが得る - コンテンツのための「-raw」引数が欠落する可能性があるのPowerShell V2.0で実行している場合
$filedata = @'
app.name=Test App
app.version=1.2
'@
$filedata | set-content appdata.txt
$AppProps = convertfrom-stringdata (get-content ./appdata.txt -raw)
$AppProps
Name Value
---- -----
app.version 1.2
app.name Test App
$AppProps.'app.version'
1.2
これを行うためのいくつかのPowerShellの統合的な方法があれば、私は知りませんが、私は正規表現でそれを行うことができます。
$target = "app.name=Test App
app.version=1.2
..."
$property = "app.name"
$pattern = "(?-s)(?<=$($property)=).+"
$value = $target | sls $pattern | %{$_.Matches} | %{$_.Value}
Write-Host $value
「テストアプリケーション」を印刷する必要があります
。この場合、以下を使用することができます。
Cの含有量:\ tempに\ data.txtを:
環境= Q GRZ
target_site = FSHHPU
コード:
$file_content = Get-Content "C:\temp\Data.txt"
$file_content = $file_content -join [Environment]::NewLine
$configuration = ConvertFrom-StringData($file_content)
$environment = $configuration.'environment'
$target_site = $configuration.'target_site'
私はしたかったですエスケープする必要がある場合は、ソリューションを追加します(たとえば、バックスラッシュを含むパスがある場合)。-rawなし
$file_content = Get-Content "./app.properties" -raw
$file_content = [Regex]::Escape($file_content)
$file_content = $file_content -replace "(\\r)?\\n", [Environment]::NewLine
$configuration = ConvertFrom-StringData($file_content)
$configuration.'app.name'
:
$file_content = Get-Content "./app.properties"
$file_content = [Regex]::Escape($file_content -join "`n")
$file_content = $file_content -replace "\\n", [Environment]::NewLine
$configuration = ConvertFrom-StringData($file_content)
$configuration.'app.name'
または1行のファッションで:
(ConvertFrom-StringData([Regex]::Escape((Get-Content "./app.properties" -raw)) -replace "(\\r)?\\n", [Environment]::NewLine)).'app.name'
あなたは '=のライン-split'正規表現または'を使用することができます'。 –