Skip to main content

ซ่อนอะไรบางอย่างจาก Finder

Submitted by ezybzy on

Mac OSX Stack

เห็นอะไรแปลกๆ ใน Stack ของผมไหมเอ่ย? ตัว Stack ที่ผมกดคือ Documents จะสังเกตว่าผมก็เล่น MSN อยู่แล้ว Microsoft User Data มันหายไปไหนล่ะ?

ผมไม่ได้ลบมันนะ ดูใน Terminal ก็ได้

Terminal on ~/Documents

แล้วผมซ่อนมันอย่างไรล่ะ? จริงๆ การซ่อนไฟล์จาก Finder ไม่ใช่เรื่องใหม่ใน Mac OS X เพราะตั้งแต่ในอดีต เราก็ถูกปกปิดไม่ให้เห็นไฟล์ใน Finder อยู่แล้ว ตัวอย่างหนึ่งที่เราพบเห็นบ่อยๆ คือ ไฟล์เพลงใน iPod ซึ่งทาง Apple ได้ซ่อนไฟล์ไว้เพื่อป้องกันไม่ให้ผู้ใช้งานเข้าถึงไฟล์เพลงได้ง่ายๆ ป้องกันการละเมิดลิขสิทธิ์รวมถึงเพื่อไม่ให้เกิดความเสียหายกับตัวระบบของ iPod ด้วย

การซ่อนไฟล์จาก Finder มี 2 วิธี ดังนี้

  • วิธีแบบ Unix คือตั้งชื่อไฟล์นำหน้าด้วย . เช่น .profile, .login ซึ่งวิธีนี้ทำได้ง่าย ใครๆ ก็รู้ และวิธีนี้มันจะซ่อนตัวจาก ls แบบปกติด้วย แต่จากตัวอย่างข้างบน ผมไม่ได้ใช้วิธีนี้
  • วิธีแบบ HFS+ ที่เรียกชื่อวิธีเช่นนี้เพราะว่า มันใช้ได้เฉพาะระบบปฏิบัติการที่ใช้ File System แบบนี้ วิธีนี้โดยส่วนตัวมองว่าค่อนข้างจะสะอาด เพราะ ls แบบปกติมองเห็นแต่ Finder มองไม่เห็น (เว้นแต่ไปตั้งให้ Finder มัน Show all Files เองนะ)

เท่าที่ลองค้นหา ก็พบว่ามันเกี่ยวกับ Programming นิดหน่อย ดูเหมือนจะยาก แต่ก็บังเอิญไปพบในเว็บไซต์แห่งหนึ่ง (พอดีไม่ได้ Bookmark เอาไว้) บอกว่ามี Command line อันหนึ่งไว้สำหรับจัดการไฟล์ในระบบ HFS+ ชื่อคำสั่งว่า SetFile (อยู่ใน /Developer/usr/bin) ซึ่งต้องติดตั้ง XCode ก่อนจึงจะมีคำสั่งชุดนี้ (อีกคำสั่งที่เกี่ยวข้องคือ GetFileInfo เอาไว้ดูรายละเอียดของไฟล์) สำหรับรายละเอียดก็ลอง man อ่านดูครับ

แล้วใช้งานอย่างไร ผมก็เพียงแค่พิมพ์ SetFile -a V ~/Documents/Microsoft\ User\ Data เสร็จแล้วมันจะยังไม่หายจาก Stack ในทันที (แต่ถ้าเปิดดูใน Finder มันจะหายไปแล้ว) เราต้องทำให้เกิดการเปลี่ยนแปลงบางอย่างใน Documents (Stack ตัวนั้น) แล้วเจ้า Stack มันจึงจะเปลี่ยนแปลงตาม

นี้แหละครับ ขั้นตอนการซ่อนอะไรบางอย่างใน Finder ก็ลองเอาไปประยุกต์ซ่อนอะไรบางอย่างดูครับ เพราะคุณก็คงมีข้อมูลที่ไม่อยากให้ปรากฏใน Finder ใช่ไหม?