ฉันคิดว่าคุณก็เหมือนฉัน มักจะเห็นเส้นทางของรูปแบบ !!! สำคัญ____ใหม่____!!! ห้ามลบ!!!คำสั่งเลขที่ 98819-649-B ลงวันที่ 30 กุมภาพันธ์ 1985 ในการแต่งตั้ง Ivan Aleksandrovich Kozlov เป็นรักษาการหัวหน้าแผนกเพื่อสนับสนุนลูกค้า VIP ขององค์กรและจัดประชุมทางธุรกิจนอกสถานที่.doc.
และบ่อยครั้งคุณจะไม่สามารถเปิดเอกสารดังกล่าวใน Windows ได้ทันที บางคนใช้วิธีแก้ไขปัญหาเฉพาะหน้าในรูปแบบของการแมปดิสก์ บางคนใช้ตัวจัดการไฟล์ที่สามารถทำงานกับเส้นทางที่ยาวได้: Far Manager, Total Commander และอื่น ๆ และอีกมากมายที่น่าเศร้าที่เฝ้าดูวิธีสคริปต์ PS ที่พวกเขาสร้างขึ้นซึ่งมีการลงทุนจำนวนมากและทำงานอย่างหนักหน่วงในสภาพแวดล้อมการทดสอบในสภาพแวดล้อมการต่อสู้บ่นอย่างหมดหนทางเกี่ยวกับงานที่เป็นไปไม่ได้: เส้นทางที่ระบุ ชื่อไฟล์ หรือทั้งสองอย่างยาวเกินไป ชื่อไฟล์แบบเต็มต้องมีความยาวน้อยกว่า 260 อักขระ และชื่อไดเร็กทอรีต้องน้อยกว่า 248 อักขระ
เมื่อปรากฎว่า 260 ตัวอักษรก็เพียงพอแล้ว "ไม่ใช่สำหรับทุกคนเท่านั้น" หากคุณสนใจที่จะก้าวข้ามขอบเขตของสิ่งที่ได้รับอนุญาต ฉันขอภายใต้แมว
ต่อไปนี้เป็นเพียงผลเสียของการจำกัดความยาวพาธของไฟล์:
- มีโฟลเดอร์บนเซิร์ฟเวอร์ เช่น D:DataSharedAccounting ซึ่งแชร์ผ่าน SMB และต่อเชื่อมกับผู้ใช้เป็นไดรฟ์เครือข่าย S ผู้ใช้สร้างไฟล์ที่ผู้ดูแลระบบ / สคริปต์ไม่สามารถอ่านได้เมื่อเข้าถึงภายในเครื่องจากเซิร์ฟเวอร์ เนื่องจาก เส้นทางสัมบูรณ์ยาวกว่าเส้นทางเครือข่าย
ข้อผิดพลาดในการซิงโครไนซ์โปรไฟล์โรมมิ่ง ;ปัญหาเกี่ยวกับการกู้คืนจากสำเนาเงา ;- เมื่อย้ายข้อมูลจากระบบอื่นที่มีข้อจำกัดที่เข้มงวดน้อยกว่าเกี่ยวกับความยาวของพาธ ในสภาพแวดล้อมใหม่ บางส่วนจะไม่สามารถเข้าถึงได้โดยไม่ต้องเต้นรำกับแทมบูรีน
ข้อมูลที่ไม่ถูกต้องเมื่อคำนวณขนาดและจำนวนไฟล์ในโฟลเดอร์ ;- ฯลฯ ...
เบี่ยงเบนจากหัวข้อเล็กน้อย ฉันทราบว่าสำหรับการจำลองแบบ DFS ปัญหาที่พิจารณาในบทความนี้ไม่น่ากลัว และไฟล์ที่มีชื่อยาวจะเดินทางจากเซิร์ฟเวอร์ไปยังเซิร์ฟเวอร์ได้สำเร็จ (เว้นแต่คุณจะ
ฉันต้องการดึงดูดความสนใจไปที่ยูทิลิตี้ที่มีประโยชน์มากซึ่งช่วยฉันมากกว่าหนึ่งครั้ง
ฉันยังสนใจที่จะเรียนรู้วิธีทำงานกับเส้นทาง PowerShell ที่ยาว กับเขาเกือบจะเป็นเรื่องตลกเกี่ยวกับ Ivan Tsarevich และ Vasilisa the Beautiful
วิธีที่รวดเร็ว
เปลี่ยนไปใช้ Linux และไม่ต้องกังวลเกี่ยวกับ Windows 10/2016/2019 และเปิดใช้งานการตั้งค่านโยบายกลุ่ม/การปรับแต่งรีจิสทรีที่เหมาะสม ฉันจะไม่อาศัยวิธีการนี้โดยละเอียดเพราะ มีบทความมากมายเกี่ยวกับหัวข้อนี้บนอินเทอร์เน็ตเช่น
เมื่อพิจารณาว่าในบริษัทส่วนใหญ่มีระบบปฏิบัติการจำนวนมาก หากจะพูดอย่างสุภาพ ไม่ใช่เวอร์ชันใหม่ วิธีนี้เป็นวิธีที่รวดเร็วสำหรับการเขียนบนกระดาษเท่านั้น เว้นแต่แน่นอนว่าคุณเป็นหนึ่งในผู้โชคดีที่มีระบบดั้งเดิมและ Windows น้อย 10/2016/2019 รัชกาล.
ทางยาว
ที่นี่เราทำการจองทันทีว่าการเปลี่ยนแปลงจะไม่ส่งผลกระทบต่อพฤติกรรมของ Windows Explorer แต่จะทำให้สามารถใช้เส้นทางยาวใน PowerShell cmdlets เช่น Get-Item, Get-ChildItem, Remove-Item เป็นต้น
ก่อนอื่นมาอัปเดต PowerShell เสร็จแล้ว หนึ่ง สอง สาม
- เราอัปเดต .NET Framework เป็นเวอร์ชันอย่างน้อย 4.5 ระบบปฏิบัติการต้องเป็น Windows 7 SP1/2008 R2 เป็นอย่างน้อย สามารถดาวน์โหลดเวอร์ชันปัจจุบันได้
ที่นี่ อ่านข้อมูลเพิ่มเติมที่นี่ . ดาวน์โหลด และติดตั้ง Windows Management Framework 5.1- เรารีบูตเครื่อง
ผู้ที่ทำงานหนักสามารถทำตามขั้นตอนด้านบนได้ด้วยตนเอง ส่วนผู้ที่ขี้เกียจสามารถทำได้โดยใช้ SCCM นโยบาย สคริปต์ และเครื่องมืออัตโนมัติอื่นๆ
สามารถดู PowerShell เวอร์ชันปัจจุบันได้จากตัวแปร $PSเวอร์ชันตาราง. หลังจากอัปเดตควรมีลักษณะดังนี้:
ตอนนี้เมื่อใช้ cmdlets Get-ChildItem และคนอื่นชอบเขาแทนที่จะเป็นแบบปกติ เส้นทาง เราจะใช้ literalPath.
รูปแบบของเส้นทางจะแตกต่างกันเล็กน้อย:
Get-ChildItem -LiteralPath "?C:Folder"
Get-ChildItem -LiteralPath "?UNCServerNameShare"
Get-ChildItem -LiteralPath "?UNC192.168.0.10Share"
เพื่อความสะดวกในการแปลงเส้นทางจากรูปแบบปกติเป็นรูปแบบ literalPath คุณสามารถใช้ฟังก์ชันนี้:
Function ConvertTo-LiteralPath
Param([parameter(Mandatory=$true, Position=0)][String]$Path)
If ($Path.Substring(0,2) -eq "") {Return ("?UNC" + $Path.Remove(0,1))}
Else {Return "?$Path"}
}
โปรดทราบว่าเมื่อตั้งค่าพารามิเตอร์ literalPath ไม่สามารถใช้สัญลักษณ์แทนได้ (*, ? ฯลฯ )
นอกเหนือจากพารามิเตอร์ literalPathใน PowerShell cmdlet ที่ปรับปรุงแล้ว Get-ChildItem พารามิเตอร์ที่ได้รับ ความลึกซึ่งคุณสามารถตั้งค่าความลึกของการซ้อนสำหรับการค้นหาแบบเรียกซ้ำได้ ฉันใช้มันสองสามครั้งและพอใจ
ตอนนี้คุณไม่ต้องกลัวว่าสคริปต์ PS ของคุณจะหลงทางจากเส้นทางที่มีหนามยาวและจะไม่เห็นไฟล์ที่อยู่ห่างไกล ตัวอย่างเช่น วิธีการนี้ช่วยฉันได้มากเมื่อเขียนสคริปต์เพื่อรีเซ็ตแอตทริบิวต์ "ชั่วคราว" สำหรับไฟล์ในโฟลเดอร์ DFSR แต่นี่เป็นอีกเรื่องหนึ่งที่ฉันจะพยายามบอกในบทความอื่น ฉันกำลังรอความคิดเห็นที่น่าสนใจจากคุณและขอแนะนำให้ทำแบบสำรวจ
ลิงค์ที่เป็นประโยชน์
เฉพาะผู้ใช้ที่ลงทะเบียนเท่านั้นที่สามารถเข้าร่วมในการสำรวจได้
ปัญหาของเส้นทางยาวเกี่ยวข้องกับคุณหรือไม่?
-
มี
-
มีความเกี่ยวข้อง แต่ตัดสินใจแล้ว
-
รบกวนแต่ไม่มาก
-
ไม่ได้คิดเกี่ยวกับมัน ทุกอย่างดูเหมือนจะทำงาน
-
ไม่
-
อื่นๆ (ระบุในคอมเม้นท์)
ผู้ใช้ 155 คนโหวต ผู้ใช้ 25 รายงดออกเสียง
ที่มา: will.com