Tag: filesystem
14 รายการ
Blog
Python Path.readlink: อ่านปลายทาง symlink โดยไม่เผลอ resolve ทั้งเส้น
แยกการอ่านค่าที่ symlink เก็บจากการ resolve path จริง พร้อมทดสอบ relative target และ broken link ด้วย pathlib
Python Path.walk: เดินต้นไม้โฟลเดอร์แบบ pathlib โดยไม่ต้อง os.walk
ใช้ Path.walk ตั้งแต่ Python 3.12 ได้ dirpath/dirnames/filenames คล้าย os.walk แต่เป็น Path object ลดการต่อสตริงเอง
Python os.fwalk: เดินต้นไม้ไฟล์พร้อม dir_fd เพื่อลด path race
ใช้ os.fwalk เปิดไฟล์แบบอ้างอิงไดเรกทอรีปัจจุบัน พร้อมอธิบายอายุของ descriptor และ unittest ที่รันจริง
Java Files.move กับ ATOMIC_MOVE: เผยแพร่ไฟล์เมื่อเขียนเสร็จทั้งก้อน
เขียนลงไฟล์ชั่วคราวบน filesystem เดียวกันแล้ว atomic move พร้อมวาง fallback อย่างไม่กล่าวเกินจริง
Zig 0.16 renamePreserve: ย้ายไฟล์โดยไม่เขียนทับปลายทางเงียบ ๆ
ใช้ Io.Dir.renamePreserve ทำ publish แบบ fail-closed และแยกกรณีปลายทางมีอยู่จากการ replace
Python os.path.commonpath: ตรวจขอบเขต path โดยไม่หลง prefix ที่หน้าตาเหมือนกัน
เทียบ commonpath กับ commonprefix และย้ำว่าต้อง resolve symlink ก่อนใช้เป็น security boundary
Python 3.14 Path.info: ใช้ type cache จาก directory scan โดยไม่เผลอเชื่อข้อมูลเก่า
ใช้ pathlib.Path.info ลดการเรียก filesystem ซ้ำหลัง iterdir พร้อมเข้าใจ cache freshness และวิธีตรวจสถานะปัจจุบัน
Path.relative_to(..., walk_up=True): หาพาธญาติเมื่อเป้าหมายอยู่นอกต้นไม้เดิม
อธิบายพารามิเตอร์ walk_up ของ pathlib.Path.relative_to ตาม docs — ใช้เมื่อต้องปีนขึ้นก่อนแล้วค่อยลงไปโฟลเดอร์พี่น้อง
Bun.Glob: สแกนไฟล์ตาม pattern โดยตั้งขอบเขต symlink ให้ชัด
ใช้ Bun.Glob จับคู่และสแกนไฟล์ พร้อมค่า dot, followSymlinks และ onlyFiles ที่ต้องเลือกก่อนแตะ repository จริง
Java Files.walk: เดินต้นไม้ไฟล์แล้วปิด Stream ให้ทัน
ใช้ Files.walk ใน try-with-resources เพื่อไม่ค้าง directory handles พร้อมตัวอย่างนับไฟล์ที่สร้างและล้างเองได้
Python pathlib.full_match: ตรวจ Path ทั้งเส้นโดยไม่เผลอรับไฟล์นอกกฎ
เทียบ full_match กับ match สำหรับ allowlist ของ path พร้อมตัวอย่าง PurePath ที่ทดสอบได้โดยไม่แตะ filesystem
Go testing/fstest.MapFS: เทสต์สัญญาไฟล์โดยไม่ต้องสร้าง temp directory
ใช้ MapFS จำลองต้นไม้ไฟล์แบบเล็กและ deterministic พร้อมข้อจำกัดที่ต้องรู้ก่อนแชร์ข้าม goroutine

contextlib.chdir: เปลี่ยนโฟลเดอร์ชั่วคราวแบบปลอดภัยใน with
สอนใช้ contextlib.chdir ตั้งแต่ Python 3.11 เทียบกับ os.chdir เปล่าๆ พร้อมตัวอย่างที่รันตรวจได้
Python Path.walk: เดินโฟลเดอร์แบบ prune ได้และไม่ตาม symlink โดยปริยาย
ใช้ pathlib.Path.walk ค้นไฟล์อย่างอ่านง่าย พร้อมตัด subtree และทดสอบด้วย temporary directory