ค้นหาเว็บไซต์

PowerShell แยกบน NewLine


ฟังก์ชัน Split() สตริง PowerShell จะแยกสตริงออกเป็นสตริงย่อยหลายสตริงตามตัวคั่นที่ระบุ หากต้องการแยกการขึ้นบรรทัดใหม่ในสตริง คุณสามารถใช้เมธอด Split() กับ [Environment::Newline]

ถ้าคุณมีสตริงหรือไฟล์ข้อความที่มีตัวคั่นบรรทัด CRLF คุณสามารถใช้วิธีแยกสตริง PowerShell หรือตัวดำเนินการแยกได้

ในบทความนี้ เราจะพูดถึงวิธีการแยกบรรทัดใหม่สำหรับสตริงหรือไฟล์ข้อความที่ระบุโดยใช้ เมธอด Split() หรือตัวดำเนินการแยก

PowerShell แยกบน NewLine สำหรับ String

หากคุณมีสตริงที่มีสตริงหลายบรรทัดและต้องการแยกบรรทัดใหม่ คุณสามารถทำได้โดยใช้เมธอดสตริง split() ของสตริง PowerShell

$testString = "Welcome to `r`nShellGeek Website"

#Split on new line using Environment::NewLine
$testString.Split([System.Environment]::NewLine,[System.StringSplitOptions]::RemoveEmptyEntries)   

ในสคริปต์ PowerShell ข้างต้น $testString มีสตริงที่มี CRLF ( Carriage Return และ Line Feed)

เมื่อใช้เมธอด PowerShell string Split() เราได้ใช้ [Environment]::NewLine เป็นตัวคั่นเพื่อแยกสตริงในบรรทัดใหม่

StringSplitOptions::RemoveEmptyEntries เป็นพารามิเตอร์ทางเลือก และลบรายการว่างออกจากผลลัพธ์

ผลลัพธ์ของสคริปต์ PowerShell ข้างต้นหลังจากใช้เมธอด split()

Welcome to
ShellGeek Website

คุณยังสามารถใช้ตัวดำเนินการ split เพื่อแยกสตริงในการขึ้นบรรทัดใหม่ด้วยความช่วยเหลือของ [Environment]::NewLine หรือ `r`n

$testString = "Welcome to `r`nShellGeek Website" 

# Split the newline using `r`n
$teststring -split "`r`n" 

# Split the newline using Environment::NewLine
$teststring -split [System.Environment]::NewLine  

ในสคริปต์ PowerShell ข้างต้น เราได้ใช้สองวิธีในการแบ่งสตริงในการขึ้นบรรทัดใหม่โดยใช้ Environment::NewLine หรือ `r`n

ผลลัพธ์ของสคริปต์ด้านบนหลังจากแยกสตริงในการขึ้นบรรทัดใหม่คือ:

Welcome to
ShellGeek Website

เคล็ดลับเด็ด: วิธีแยกสตริงเป็นตัวแปรใน PowerShell!

ไฟล์ข้อความแยก PowerShell บนบรรทัดใหม่

คุณสามารถใช้ Get-Content cmdlet ใน PowerShell เพื่อแยกไฟล์ข้อความในการขึ้นบรรทัดใหม่ คำสั่ง Get-Content โดยค่าเริ่มต้นจะแยกบรรทัดใหม่และส่งกลับอาร์เรย์สตริง

(Get-Content -Path D:\PS\Alias.txt)   

ในสคริปต์ PowerShell ข้างต้น Get-Content cmdlet จะใช้พารามิเตอร์ Path เพื่อระบุชื่อไฟล์และเส้นทาง มันจะอ่านเนื้อหาและแยกมันขึ้นบรรทัดใหม่ตามค่าเริ่มต้น

ผลลัพธ์ของสคริปต์ PowerShell ข้างต้นหลังจากแยกไฟล์ข้อความเป็นบรรทัดใหม่คือ:

PS C:\> (Get-Content -Path D:\PS\Alias.txt)                                                                             # Alias File
# Exported by : ShellGeek
# Date/Time : 30 July 2022 18:57:47
# Computer : INCORP-EU-117
"foreach","ForEach-Object","","ReadOnly, AllScope"
"%","ForEach-Object","","ReadOnly, AllScope"
"where","Where-Object","","ReadOnly, AllScope"
"?","Where-Object","","ReadOnly, AllScope"
"ac","Add-Content","","ReadOnly, AllScope"
"clc","Clear-Content","","ReadOnly, AllScope"

คุณยังสามารถใช้เมธอด PowerShell string Split() เพื่อแยกไฟล์ข้อความในบรรทัดใหม่โดยใช้ [Environment]:: NewLine และส่งคืนอาร์เรย์สตริง

# Using the Split method to split the text file on new line
(Get-Content -Path D:\PS\Alias.txt).Split([System.Environment]::NewLine)

# Using the Split operator to split the file on newline
(Get-Content -Path D:\PS\Alias.txt -Raw) -split "`r`n"

บทสรุป

ฉันหวังว่าบทความข้างต้นเกี่ยวกับวิธีแยกสตริงในการขึ้นบรรทัดใหม่หรือไฟล์ข้อความในการขึ้นบรรทัดใหม่จะเป็นประโยชน์สำหรับคุณ

คุณสามารถค้นหาหัวข้อเพิ่มเติมเกี่ยวกับคำสั่ง PowerShell Active Directory และพื้นฐาน PowerShell ได้ในหน้าแรกของ ShellGeek

บทความที่เกี่ยวข้อง