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

PowerShell: วิธีแปลงชื่อไฟล์เป็นตัวพิมพ์เล็ก


บ่อยครั้งคุณอาจต้องการใช้ PowerShell เพื่อแปลงชื่อไฟล์ของแต่ละไฟล์ในโฟลเดอร์ให้เป็นตัวพิมพ์เล็ก

คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อดำเนินการดังกล่าว:

gci | foreach { if ($_.Name -cne $_.Name.ToLower())
  { ren $_.FullName $_.Name.ToLower() } }

ตัวอย่างนี้จะแปลงแต่ละชื่อไฟล์ในไดเร็กทอรีปัจจุบันให้เป็นอักษรตัวพิมพ์เล็กทั้งหมด

นี่คือสิ่งที่คำสั่งต่างๆ ทำ:

  • gci: นามแฝงสำหรับ Get-ChildItem ซึ่งจะดึงไฟล์ทั้งหมดในไดเรกทอรีปัจจุบัน
  • foreach: ระบุการดำเนินการที่จะดำเนินการกับแต่ละไฟล์
  • -cne: ทำการเปรียบเทียบแบบคำนึงถึงตัวพิมพ์เล็กและใหญ่เพื่อตรวจสอบว่าชื่อไฟล์ปัจจุบันในลูป foreach ไม่ใช่ตัวพิมพ์เล็กทั้งหมดหรือไม่ ไม่ใช่ จากนั้นชื่อไฟล์จะถูกแปลงเป็นตัวพิมพ์เล็กโดยใช้เมธอด ToLower()
  • ren: นามแฝงสำหรับ เปลี่ยนชื่อรายการ

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: วิธีแปลงชื่อไฟล์เป็นตัวพิมพ์เล็กใน PowerShell

ขั้นแรก เราสามารถใช้คำสั่ง gci (นามแฝงสำหรับ Get-ChildItem cmdlet) เพื่อดูชื่อไฟล์ทั้งหมดในไดเร็กทอรีปัจจุบันของเราก่อน:

เราจะเห็นว่ามีไฟล์สามไฟล์ในไดเร็กทอรีปัจจุบันของเรา ปัจจุบันตัวอักษรตัวแรกของแต่ละไฟล์เป็นตัวพิมพ์ใหญ่

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแปลงแต่ละชื่อไฟล์ให้เป็นอักษรตัวพิมพ์เล็กทั้งหมด:

gci | foreach { if ($_.Name -cne $_.Name.ToLower())
  { ren $_.FullName $_.Name.ToLower() } }

ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:

โปรดสังเกตว่าเมื่อเราใช้คำสั่ง gci อีกครั้งเพื่อดูไฟล์ทั้งหมดในไดเร็กทอรีปัจจุบัน ซึ่งแต่ละชื่อไฟล์ตอนนี้มีอักษรตัวพิมพ์เล็กทั้งหมดแล้ว

หมายเหตุ: คุณสามารถดูเอกสารฉบับสมบูรณ์สำหรับวิธี ToLower() ได้ที่นี่

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