วิธีรับนามสกุลไฟล์โดยใช้ PowerShell (พร้อมตัวอย่าง)
บ่อยครั้งคุณอาจต้องการแยกเฉพาะส่วนขยายจากชื่อไฟล์โดยใช้ PowerShell
มีสองวิธีทั่วไปในการดำเนินการดังกล่าว:
วิธีที่ 1: รับนามสกุลไฟล์จากดิสก์
$my_file = Get-Item "c:\users\bobbi\nba_data.xlsx"
$my_file.Extension
ตัวอย่างเฉพาะนี้ใช้ Get-Item cmdlet เพื่อดึงไฟล์ที่อยู่ในเส้นทางเฉพาะ จากนั้นใช้คุณสมบัติ ส่วนขยาย เพื่อแยกเฉพาะส่วนขยายจากชื่อไฟล์
วิธีที่ 2: รับนามสกุลไฟล์จากสตริง
$my_file = "c:\users\bobbi\nba_data.csv"
[System.IO.Path]::GetExtension($my_file)
ตัวอย่างเฉพาะนี้ใช้ [System.IO.Path]::GetExtension เพื่อแตกนามสกุลของไฟล์โดยตรงเมื่อชื่อไฟล์ถูกจัดเก็บเป็นสตริง
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่างที่ 1: รับนามสกุลไฟล์จากดิสก์โดยใช้ PowerShell
สมมติว่าเรามีไฟล์อยู่ที่เส้นทางต่อไปนี้:
C:\Users\bobbi\nba_data.xlsxสมมติว่าเราต้องการแยกเฉพาะนามสกุลไฟล์จากพาธนี้
วิธีหนึ่งที่ทำได้คือใช้ Get-Item เพื่อดึงข้อมูลไฟล์ จากนั้นใช้คุณสมบัติ Extension เพื่อแยกเฉพาะส่วนขยาย:
$my_file = Get-Item "c:\users\bobbi\nba_data.xlsx"
$my_file.Extensionภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
เราจะเห็นว่าสิ่งนี้ส่งคืน .xlsx ซึ่งแสดงเฉพาะนามสกุลของไฟล์
ตัวอย่างที่ 2: รับนามสกุลไฟล์จากสตริงโดยใช้ PowerShell
สมมติว่าเรามีตำแหน่งไฟล์ที่เก็บไว้ในสตริงใน PowerShell:
“c:\users\bobbi\nba_data.xlsx”สมมติว่าเราต้องการแยกเฉพาะนามสกุลไฟล์จากสตริงนี้
วิธีหนึ่งในการทำเช่นนั้นคือการใช้ [System.IO.Path]::GetExtension เพื่อแตกนามสกุลของไฟล์โดยตรง:
$my_file = "c:\users\bobbi\nba_data.xlsx"
[System.IO.Path]::GetExtension($my_file)
ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
เราจะเห็นว่าสิ่งนี้ส่งคืน .xlsx ซึ่งแสดงเฉพาะนามสกุลของไฟล์

