การเรียนรู้ตารางแฮชใน PowerShell: คู่มือที่ครอบคลุม
ตารางแฮชเป็นโครงสร้างข้อมูลที่มีประสิทธิภาพใน PowerShell ซึ่งช่วยให้สามารถจัดการคู่คีย์-ค่าได้อย่างมีประสิทธิภาพ การทำความเข้าใจวิธีใช้ตารางแฮชอย่างมีประสิทธิภาพจะช่วยเพิ่มความสามารถในการจัดการข้อมูลของคุณใน PowerShell ได้อย่างมาก ในคู่มือที่ครอบคลุมนี้ เราจะสำรวจพื้นฐานของตารางแฮช เรียนรู้วิธีสร้างและเริ่มต้นตารางแฮช เพิ่มและดึงค่า วนซ้ำตารางเหล่านั้น และทำงานกับตารางแฮชที่ซ้อนกัน นอกจากนี้เรายังจะดูวิธีการดำเนินการขั้นสูง แปลงเป็นรูปแบบข้อมูลอื่นๆ และปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดสำหรับการจัดการข้อมูลที่มีประสิทธิภาพ มาดำน้ำกันเถอะ!
รู้เบื้องต้นเกี่ยวกับตารางแฮชใน PowerShell
ก่อนที่เราจะเจาะลึกรายละเอียดของตารางแฮชใน PowerShell เรามาเริ่มต้นด้วยการแนะนำเบื้องต้นกันก่อน ตารางแฮชคือโครงสร้างข้อมูลที่ช่วยให้คุณสามารถจัดเก็บและดึงข้อมูลตามคู่คีย์-ค่า โดยให้วิธีที่รวดเร็วในการดึงค่าตามคีย์ที่เกี่ยวข้อง ใน PowerShell ตารางแฮชจะถูกสร้างขึ้นโดยใช้สัญลักษณ์ “@{}” กุญแจอยู่ทางด้านซ้ายของสัญลักษณ์ และค่าอยู่ทางด้านขวาของสัญลักษณ์ ตารางแฮชของ PowerShell คล้ายกับพจนานุกรมในภาษาอื่นๆ คล้ายกับพจนานุกรมในชีวิตจริงที่คุณค้นหาความหมาย (ค่า) ของคำ (คีย์) ตารางแฮชทำงานภายใต้หลักการเดียวกัน
ไวยากรณ์พื้นฐานสำหรับการสร้างตารางแฮชใน PowerShell คือ:
$hashTable = @{
Key1 = 'Value1'
Key2 = 'Value2'
Key3 = 'Value3'
}
ทำความเข้าใจวิธีการทำงานของตารางแฮช
หากต้องการเชี่ยวชาญตารางแฮชใน PowerShell อย่างแท้จริง สิ่งสำคัญคือต้องเข้าใจวิธีการทำงานของตารางแฮช ตารางแฮชจะขึ้นอยู่กับฟังก์ชันแฮช ซึ่งรับคีย์และแปลงเป็นโค้ดแฮชเฉพาะ รหัสแฮชนี้จะใช้เพื่อจัดเก็บและดึงค่าที่เกี่ยวข้องกับคีย์
สิ่งสำคัญประการหนึ่งที่ควรทราบก็คือตารางแฮชนั้นไม่มีการเรียงลำดับ ซึ่งหมายความว่าลำดับที่คุณเพิ่มรายการลงในตารางแฮชไม่สำคัญ อย่างไรก็ตาม คุณสามารถจัดเรียงตารางแฮชตามคีย์หรือค่าได้หากจำเป็น
แนวคิดสำคัญอีกประการหนึ่งที่ต้องทำความเข้าใจคือการชนกัน การชนกันเกิดขึ้นเมื่อสองคีย์มีรหัสแฮชเดียวกัน ในกรณีนี้ PowerShell จะใช้รายการที่เชื่อมโยงเพื่อจัดเก็บค่าที่เกี่ยวข้องกับคีย์
การสร้างตารางแฮชใน PowerShell
การสร้างตารางแฮชใน PowerShell นั้นง่ายดาย ตามที่กล่าวไว้ข้างต้น คุณสามารถใช้สัญลักษณ์ “@{}” (@ และวงเล็บปีกกา) เพื่อสร้างตารางแฮชได้ นี่คือตัวอย่าง:
$Person = @{
"FirstName" = "John"
"LastName" = "Doe"
"Age" = 30
}
ในตัวอย่างนี้ เรากำลังสร้างตารางแฮช “บุคคล” โดยมีคู่คีย์/ค่าสามคู่ คีย์คือ "FirstName", "LastName" และ "Age" และค่าคือ "John", "Doe" และ 30 ตามลำดับ
สั่งซื้อ Hashtables ใน PowerShell
ใน PowerShell ตารางแฮชที่เรียงลำดับจะรักษาลำดับของคู่คีย์-ค่าตามลำดับการแทรก ซึ่งแตกต่างจากตารางแฮชมาตรฐาน ซึ่งไม่รับประกันลำดับเฉพาะใดๆ สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อลำดับของรายการมีความสำคัญ เช่น เมื่อสร้างรายงานหรือการสร้างข้อมูลที่มีโครงสร้าง หากต้องการสร้างตารางแฮชที่ได้รับคำสั่ง ให้ใช้แอตทริบิวต์ [ordered] ก่อนคำจำกัดความของตารางแฮช:
$orderedHashTable = [ordered]@{
First = 'John'
Last = 'Doe'
Age = 30
Gender = 'Male'
}
สิ่งนี้จะสร้างพจนานุกรมที่เรียงลำดับ
การเพิ่มและการลบรายการออกจากตารางแฮช
เมื่อคุณสร้างตารางแฮชแล้ว คุณอาจต้องการเพิ่มหรือลบรายการต่างๆ คุณสามารถใช้วิธี “เพิ่ม()” เพื่อเพิ่มค่าคีย์ใหม่ให้กับตารางแฮช:
$Person.add("Country","United States")
อีกทางหนึ่ง หากต้องการเพิ่มรายการลงในตารางแฮช คุณสามารถกำหนดค่าให้กับคีย์ใหม่ได้ ตัวอย่างเช่น:
$Person["Occupation"] = "Software Engineer"
หากมีคีย์อยู่แล้วใน PowerShell Hashtable ระบบจะอัปเดตค่าที่มีอยู่ ถ้าไม่เช่นนั้น สคริปต์จะเพิ่มคู่คีย์-ค่าใหม่ลงในตารางแฮชโดยอัตโนมัติ ในกรณีนี้ เราได้เพิ่มคู่คีย์-ค่าใหม่ “อาชีพ” พร้อมค่า “วิศวกรซอฟต์แวร์” ลงในตารางแฮชที่มีอยู่ คุณยังสามารถใช้เมธอด "Set_Item()" เพื่ออัปเดตค่าของคีย์เฉพาะได้:
$Person.Set_Item("Age", "35")
หากต้องการลบรายการออกจากตารางแฮช คุณสามารถใช้วิธี "ลบ" ตัวอย่างเช่น:
$Person.Remove("Age")
การดำเนินการนี้จะลบคู่คีย์-ค่า "อายุ" ออกจากตารางแฮช
หากต้องการลบทุกอย่างออกจากตาราง has คุณสามารถใช้เตรียมใช้งานตารางแฮชว่างหรือเรียกใช้เมธอด "Clear"
# Recreate the hashtable
$Person = @{}
# Clear everything from the Hash table
$Person.clear()
วนซ้ำผ่านตารางแฮชใน PowerShell
PowerShell จัดเตรียมหลายวิธีในการวนซ้ำผ่านตัวแปรแฮช แต่วิธีที่พบบ่อยที่สุดคือการใช้การวนซ้ำ ForEach การวนซ้ำตารางแฮชใน PowerShell คล้ายกับการวนซ้ำผ่านอาร์เรย์ อย่างไรก็ตาม เนื่องจากตารางแฮชไม่มีการเรียงลำดับ คุณจึงจำเป็นต้องใช้ลูป "foreach" เพื่อวนซ้ำคู่คีย์/ค่า นี่คือตัวอย่าง:
$hashTable = @{
"Name" = "John Doe"
"Age" = 30
"City" = "New York"
}
foreach($key in $hashTable.Keys){
Write-Host "$key : $($hashTable[$key])"
}
การวนซ้ำนี้จะพิมพ์คู่คีย์-ค่าแต่ละคู่ในตารางแฮช คุณยังสามารถใช้วิธี GetEnumerator เพื่อวนซ้ำผ่านคีย์และค่า Hashtable:
$hashTable.GetEnumerator() | ForEach-Object {
Write-Output "$($_.Name): $($_.Value)"
}
คุณสามารถดำเนินการใดๆ ที่ต้องการภายในลูปได้ เช่น การส่งออกค่า การคำนวณ หรือใช้ตรรกะแบบมีเงื่อนไข
การดึงค่าจากตารางแฮช
การดึงค่าจากตารางแฮชใน PowerShell เป็นเรื่องง่าย คุณสามารถดึงข้อมูลค่าได้โดยใช้คีย์ในวงเล็บเหลี่ยม ตัวอย่างเช่น:
$Name = $HashTable["Name"]
#You can also access the Hashtable values by Index or with dot operator
$HashTable[0]
$HashTable.Gender
สิ่งนี้จะกำหนดค่า “John” ให้กับตัวแปร $firstName หากต้องการรับค่าทั้งหมดจาก Hashtable คุณสามารถใช้ชื่อตัวแปรได้:
#Get Hashtable Keys and values
$hashTable
#Get All Hashtable Keys
$hashTable.Keys
#Get All Hashtable Values
$hashTable.values
กำลังตรวจสอบคีย์ในตารางแฮช
คุณสามารถตรวจสอบว่ามีคีย์อยู่ในตารางแฮชหรือไม่:
$hashTable.ContainsKey('Age') # Returns $true or $false
การเรียงลำดับคีย์และค่า Hashtable
เราจำเป็นต้องใช้ Sort-Object cmdlet เพื่อดึงข้อมูลคีย์หรือค่าตามลำดับที่เรียงลำดับ:
#Sort Keys
$hashTable.getenumerator() | Sort-Object -Property Key
#Sort Values
$hashTable.getenumerator() | Sort-Object -Property Value -Descending
การทำงานกับตารางแฮชที่ซ้อนกัน
ตารางแฮชที่ซ้อนกันคือตารางแฮชที่จัดเก็บเป็นค่าภายในตารางแฮชอื่น ช่วยให้สามารถจัดระเบียบโครงสร้างข้อมูลที่ซับซ้อนได้ หากต้องการสร้างตารางแฮชแบบซ้อน คุณสามารถกำหนดตารางแฮชเป็นค่าให้กับคีย์ได้ ตัวอย่างเช่น:
$hashTable = @{
"Name" = "John Doe"
"Contact" = @{
"Email" = "john.doe@example.com"
"Phone" = "123-456-7890"
}
}
ในตัวอย่างนี้ เรามีตารางแฮชที่ซ้อนกันซึ่งมีคีย์ "ติดต่อ" และตารางแฮชเป็นค่า คุณสามารถเข้าถึงตารางแฮชที่ซ้อนกันได้โดยใช้หลายคีย์ ตัวอย่างเช่น:
$email = $hashTable["Contact"]["Email"]
ตอนนี้ ตัวแปร $email จะมีค่า “john.doe@example.com”
การแปลงตารางแฮชเป็นประเภทข้อมูลอื่นใน PowerShell
บางครั้งคุณอาจต้องแปลงตารางแฮชเป็นข้อมูลประเภทอื่น เช่น อาร์เรย์หรือออบเจ็กต์ JSON PowerShell มีหลายวิธีในการทำเช่นนี้
หากต้องการแปลงตารางแฮชเป็นอาร์เรย์ คุณสามารถใช้วิธี "GetEnumerator" เพื่อดึงข้อมูลคู่คีย์/ค่า จากนั้นใช้วิธี "Select" เพื่อเลือกเฉพาะค่าเท่านั้น นี่คือตัวอย่าง:
$array = $hashTable.GetEnumerator() | Select-Object -ExpandProperty Value
สิ่งนี้จะสร้างอาร์เรย์ของค่าในตารางแฮช
หากต้องการแปลงตารางแฮชเป็นวัตถุ JSON คุณสามารถใช้ cmdlet “ConvertTo-Json” นี่คือตัวอย่าง:
$json = $hashTable | ConvertTo-Json
สิ่งนี้จะสร้างวัตถุ JSON จากตารางแฮช ตอนนี้คุณมีความเข้าใจอย่างมั่นคงเกี่ยวกับพื้นฐานของตารางแฮชใน PowerShell แล้ว เรามาสำรวจเทคนิคขั้นสูงกัน
เทคนิคตารางแฮชขั้นสูงใน PowerShell
นอกเหนือจากการดำเนินการพื้นฐานที่ครอบคลุมแล้ว PowerShell ยังมีการดำเนินการขั้นสูงมากมายเพื่อทำงานกับตารางแฮช การดำเนินการบางอย่างเหล่านี้รวมถึงการเรียงลำดับตารางแฮช การกรองค่า การส่งออกตารางแฮช และอื่นๆ การดำเนินการเหล่านี้สามารถทำได้โดยใช้ cmdlets และฟังก์ชันในตัว
การทำงานกับอาร์เรย์ตารางแฮชใน PowerShell
อาร์เรย์ตารางแฮชใน PowerShell นั้นเป็นอาร์เรย์ของตารางแฮชเป็นหลัก คุณสามารถสร้างอาร์เรย์ตารางแฮชได้โดยใช้สัญลักษณ์ “@()” และแยกตารางแฮชแต่ละตารางด้วยเครื่องหมายจุลภาค นี่คือตัวอย่าง:
$hashTableArray = @(
@{
"FirstName" = "John"
"LastName" = "Doe"
},
@{
"FirstName" = "Jane"
"LastName" = "Doe"
}
)
ในตัวอย่างนี้ เรากำลังสร้างอาร์เรย์ตารางแฮชที่มีตารางแฮชสองตาราง
การส่งออกตารางแฮชเป็น CSV ใน PowerShell
หากต้องการส่งออกตารางแฮชเป็น CSV ใน PowerShell คุณสามารถใช้เมธอด GetEnumerator() เพื่อวนซ้ำคู่คีย์-ค่าแต่ละคู่ จากนั้นไปป์เอาต์พุตไปยัง Export-CSV นี่คือตัวอย่าง:
$HashTable = @{
Name = 'Tommy'
StreetName = 'Vista Pl.'
City = 'Tucson'
}
$HashTable.GetEnumerator() | Select-Object Name, Value | Export-Csv -NoTypeInformation -Path C:\Temp\HashTable.csv
การดำเนินการนี้จะส่งออกตารางแฮชเป็นไฟล์ CSV ที่เส้นทางที่ระบุ คุณยังสามารถแปลงเป็นออบเจ็กต์แบบกำหนดเองก่อนได้ นี่คือวิธีที่คุณสามารถทำได้:
$hashTable = @{
Name = 'John'
Age = 30
Gender = 'Male'
}
# Convert to a custom object and export to CSV
[PSCustomObject]$hashTable | Export-Csv -Path 'C:\Temp\Hashtable.csv' -NoTypeInformation
หากเป็นออบเจ็กต์ Array of Hashtable คุณจะต้องวนซ้ำอาเรย์และแปลงตารางแฮชแต่ละรายการให้เป็นออบเจ็กต์ที่กำหนดเองก่อนที่จะส่งออก
$people = @(
@{
Name = 'John'
Age = 30
Gender = 'Male'
},
@{
Name = 'Jane'
Age = 25
Gender = 'Female'
}
)
# Convert each hash table to a custom object and export to CSV
$people | ForEach-Object {
[PSCustomObject]$_
} | Export-Csv -Path 'C:\Temp\output.csv' -NoTypeInformation
ส่งผ่านชุดของค่าพารามิเตอร์โดยใช้ตารางแฮช
Splatting เป็นเทคนิคใน PowerShell ที่ช่วยให้คุณส่งชุดของค่าพารามิเตอร์ไปยัง cmdlet โดยใช้ตารางแฮช คีย์ในตารางแฮชตรงกับชื่อพารามิเตอร์
$params = @{
Path = 'C:\'
Filter = '*.txt'
Recurse = $true
}
Get-ChildItem @params
ที่นี่ คีย์ในตารางแฮช $params (เส้นทาง ตัวกรอง และ Recurse) สอดคล้องกับพารามิเตอร์ของ Get-ChildItem cmdlet ด้วยการใส่ @ นำหน้าตารางแฮชเมื่อเรียกใช้ cmdlet แสดงว่าคุณกำลังส่งพารามิเตอร์เหล่านั้นและค่าของมันไปยัง cmdlet
การสร้างวัตถุที่กำหนดเองจากตารางแฮช
คุณยังสามารถใช้ตารางแฮชร่วมกับ New-Object หรือ [PSCustomObject] เพื่อสร้างออบเจ็กต์แบบกำหนดเองได้อย่างรวดเร็ว
$person = [PSCustomObject]@{
FirstName = 'John'
LastName = 'Doe'
Age = 30
}
คำแนะนำและเคล็ดลับในการใช้ตารางแฮช
ต่อไปนี้เป็นเคล็ดลับและคำแนะนำบางส่วนที่จะช่วยให้คุณทำงานได้อย่างมีประสิทธิภาพมากขึ้นด้วยตารางแฮชใน PowerShell:
- เลือกคีย์ที่มีความหมายและไม่ซ้ำกันซึ่งอธิบายค่าที่คีย์เหล่านั้นเป็นตัวแทนได้อย่างถูกต้อง ซึ่งจะทำให้ง่ายต่อการดึงและอัปเดตค่าในภายหลัง
- ใช้เมธอด "ContainsKey" เพื่อตรวจสอบว่ามีคีย์อยู่ในตารางแฮชหรือไม่
- พิจารณาขนาดของตารางแฮชและจำนวนคู่คีย์-ค่าที่มีอยู่ หากคุณกำลังทำงานกับข้อมูลจำนวนมาก ให้ลองใช้โครงสร้างข้อมูลอื่นๆ เช่น อาร์เรย์หรือรายการแทน
- ใช้เมธอด "GetEnumerator" เพื่อวนซ้ำคู่คีย์/ค่าในตารางแฮช
- ใช้วิธี "Clone" เพื่อสร้างสำเนาของตารางแฮช
- ใช้คุณสมบัติ "นับ" เพื่อรับจำนวนรายการในตารางแฮช
ประเพณีทั่วไปของตารางแฮช
ตารางแฮชสามารถใช้งานได้หลากหลายใน PowerShell รวมถึงการจัดเก็บการตั้งค่า การจัดกลุ่มข้อมูล และการสร้างวัตถุแบบไดนามิก ต่อไปนี้คือตัวอย่างบางส่วนของวิธีที่คุณสามารถใช้ตารางแฮชของ PowerShell:
- การจัดเก็บการตั้งค่าการกำหนดค่า: คุณสามารถสร้างตารางแฮชเพื่อจัดเก็บการตั้งค่าการกำหนดค่าสำหรับสคริปต์หรือโมดูล PowerShell ของคุณ ตัวอย่างเช่น คุณสามารถจัดเก็บเส้นทางไปยังไฟล์บันทึก ชื่อของเซิร์ฟเวอร์ฐานข้อมูล หรือข้อมูลประจำตัวสำหรับการเชื่อมต่อระยะไกล
- การจัดกลุ่มข้อมูล: คุณสามารถใช้ตารางแฮชเพื่อจัดกลุ่มข้อมูลตามคีย์ทั่วไป ตัวอย่างเช่น คุณสามารถจัดกลุ่มรายการเซิร์ฟเวอร์ตามระบบปฏิบัติการหรือตำแหน่งที่ตั้งได้
- การสร้างวัตถุแบบไดนามิก: คุณสามารถสร้างวัตถุ PowerShell ใหม่ได้โดยใช้ตารางแฮช สิ่งนี้ช่วยให้คุณสามารถกำหนดคุณสมบัติและค่าของออบเจ็กต์แบบไดนามิกตามเนื้อหาของตารางแฮช
ห่อ
โดยสรุป ตารางแฮชเป็นโครงสร้างข้อมูลที่จำเป็นใน PowerShell ที่ช่วยให้คุณสามารถจัดเก็บและดึงข้อมูลตามคู่คีย์/ค่า ด้วยการทำความเข้าใจวิธีการทำงานของตารางแฮชและการใช้งานอย่างเชี่ยวชาญ คุณจะสามารถทำงานได้อย่างมีประสิทธิภาพและประสิทธิผลมากขึ้นใน PowerShell ด้วยเคล็ดลับและเทคนิคที่อธิบายไว้ในคู่มือที่ครอบคลุมนี้ คุณสามารถยกระดับทักษะ PowerShell ของคุณไปอีกระดับและเป็นผู้เชี่ยวชาญด้านตารางแฮช ด้วยคำแนะนำที่ครอบคลุมนี้เป็นข้อมูลอ้างอิงของคุณ ตอนนี้คุณก็มีความรู้และเครื่องมือในการจัดการและจัดการตารางแฮชใน PowerShell ได้อย่างมีประสิทธิภาพ ขอให้มีความสุขในการเขียนสคริปต์!
คำถามที่พบบ่อย:
ฉันจะตรวจสอบได้อย่างไรว่า Hashtable ว่างเปล่าใน PowerShell หรือไม่
หากต้องการตรวจสอบว่า Hashtable ว่างเปล่าใน PowerShell หรือไม่ คุณสามารถใช้คุณสมบัติ Count ของ Hashtable หากคุณสมบัติ Count เท่ากับ 0 แสดงว่า Hashtable จะว่างเปล่า นี่คือตัวอย่าง:
$hashTable = @{}
if ($hashTable.Count -eq 0) { Write-Host "The hashtable is empty." }วิธีรับค่าจาก Hashtable โดยใช้คีย์
หากต้องการดึงค่าจาก Hashtable โดยใช้คีย์ใน PowerShell คุณสามารถใช้เครื่องหมายวงเล็บเหลี่ยมได้ ตัวอย่างเช่น หาก Hashtable ของคุณชื่อ $hash และคุณต้องการดึงค่าที่เกี่ยวข้องกับคีย์ “key1” คุณสามารถใช้ $hash[“key1”] นี่จะส่งคืนค่าที่สอดคล้องกัน
ฉันจะอัปเดตค่าของคีย์ใน Hashtable ได้อย่างไร
หากต้องการอัปเดตค่าของคีย์ใน Hashtable ใน PowerShell คุณสามารถใช้ตัวดำเนินการกำหนดหรือเครื่องหมายเท่ากับ (=) เพื่อกำหนดค่าใหม่ให้กับคีย์ได้ ตัวอย่างเช่น หากคุณมี Hashtable ชื่อ $hashTable และคุณต้องการอัพเดตค่าของคีย์ “key1” คุณสามารถใช้ไวยากรณ์ต่อไปนี้: $hashTable[“key1”]=“new value”
จะวนซ้ำตารางแฮชใน PowerShell ได้อย่างไร
หากต้องการวนซ้ำแฮชเทเบิลใน PowerShell คุณสามารถใช้ foreach loop หรือเมธอด GetEnumerator() นี่คือตัวอย่าง:
$HashTable.GetEnumerator() | ForEach-Object {
Write-Output $("{0}: {1}" -f $_.Key, $_.Value)
}ฉันจะสร้าง Hashtable ว่างใน PowerShell ได้อย่างไร
หากต้องการสร้าง Hashtable ว่างใน PowerShell คุณสามารถใช้ไวยากรณ์ต่อไปนี้: $myHashtable=@{}
จะเรียงลำดับคีย์ Hashtable ใน PowerShell ได้อย่างไร
ในการเรียงลำดับคีย์ Hashtable ใน PowerShell คุณสามารถใช้เมธอด GetEnumerator() เพื่อดึงข้อมูลตัวแจงนับสำหรับ Hashtable จากนั้นใช้ Sort-Object cmdlet เพื่อเรียงลำดับคีย์ นี่คือตัวอย่าง:
$HashTable.GetEnumerator() | Sort-Object -Property Key | ForEach-Object {
Write-Output $("{0}: {1}" -f $_.Key, $_.Value)
}คุณจะแสดงตารางแฮชใน PowerShell ได้อย่างไร
หากต้องการแสดงตารางแฮชใน PowerShell คุณสามารถพิมพ์ชื่อตัวแปรที่เก็บตารางแฮชได้ ตามค่าเริ่มต้น PowerShell จะแสดงตารางแฮชเป็นตารางโดยมีหนึ่งคอลัมน์สำหรับคีย์และหนึ่งคอลัมน์สำหรับค่า คุณยังสามารถใช้ cmdlets Write-Output หรือ Write-Host ได้อีกด้วย นี่คือตัวอย่าง:
foreach ($key in $hashTable.Keys) {
Write-Host "$key : $($hashTable[$key])" -ForegroundColor Green
}วิธีแปลงสตริงเป็น Hashtable ใน PowerShell
หากต้องการแปลงสตริงเป็น Hashtable ใน PowerShell คุณสามารถใช้ ConvertFrom-StringData cmdlet cmdlet นี้แปลงสตริงที่มีคู่คีย์และค่าอย่างน้อยหนึ่งคู่ให้เป็น Hashtable ตัวแบ่งบรรทัดแยกคู่คีย์-ค่าแต่ละคู่
$String = "Name=Tommy`nStreetName=Vista Pl.`nCity=Tucson"
$HashTable = $String | ConvertFrom-StringData
$HashTable

