PowerShell:
TOMLを扱う方法
方法:
PowerShellでは、TOMLを解析するためのネイティブなcmdletはありません。toml-to-json
のようなツールを使ってTOMLをJSONに変換するか、モジュールを使用することが一般的です。以下は、架空のモジュールPowerShellTOML
を使う方法です:
# まず、モジュールをインストールします(架空のもので説明用)
Install-Module PowerShellTOML
# TOMLファイルをインポート
$config = Import-TomlConfig -Path './config.toml'
# 値にアクセス
Write-Output $config.database.server
# 'config.toml'のサンプルTOML内容:
# [database]
# server = "192.168.1.1"
# ports = [ 8001, 8001, 8002 ]
# connection_max = 5000
# サンプル出力:
# 192.168.1.1
深堀り
TOMLは、設定ファイル用のXMLやYAMLのより単純な代替として、GitHubの共同創業者であるTom Preston-Wernerによって作られました。その最初のバージョンは2013年に登場しました。TOMLはJSONと比較可能ですが、人間にとってよりフレンドリーに設計されており、人々によって維持される設定に適した選択肢です。代替には、YAML、JSON、XMLなどがあります。
実装の面では、TOMLのPowerShellモジュールは通常、C#のようなよりパフォーマンス指向の言語で書かれたTOMLライブラリのラッパーになります。PowerShellにはTOMLの組み込みサポートがないため、TOML形式を便利に扱うためにそのようなモジュールが必要です。
参照
- TOML標準:https://toml.io/en/
toml
PowerShellモジュールのGitHubリポジトリ(読む時点で存在する場合):https://github.com/powershell/PowerShellTOML- TOMLについての紹介:https://github.com/toml-lang/toml
- データシリアライゼーション形式の比較:https://en.wikipedia.org/wiki/Comparison_of_data-serialization_formats