วิธีรับสิทธิ์แปดไฟล์จาก Command Line ใน Mac OS

สารบัญ:

Anonim

ผู้ใช้บรรทัดคำสั่งมักจะคุ้นเคยกับการใช้ chmod เพื่อตั้งค่าการอนุญาตไฟล์ในรูปแบบตัวเลขหรือฐานแปด เช่น การเรียกใช้คำสั่งอย่าง 'chmod 755 filename' แต่คุณเคยสงสัยหรือไม่ว่าคุณจะได้รับการอนุญาตไฟล์ได้อย่างไร ในรูปแบบเลขฐานแปด

หากคุณต้องการดูหรือดูค่าตัวเลขฐานแปดของสิทธิ์ของไฟล์หรือโฟลเดอร์ใดๆ ผ่านบรรทัดคำสั่ง คุณสามารถเปิดใช้คำสั่ง stat ใน Mac OS ได้

เราถือว่าคุณมีประสบการณ์ในระดับที่เหมาะสมและความสะดวกสบายในบรรทัดคำสั่ง หากคุณไม่มี บทความนี้อาจไม่เกี่ยวข้องกับคุณ ผู้ใช้ Mac ส่วนใหญ่จะเคยดูหรือเปลี่ยนสิทธิ์ของไฟล์ผ่าน Mac Finder ตามที่อธิบายไว้ที่อื่นเท่านั้น (หากเป็นเช่นนั้น) ในขณะที่บทความนี้มุ่งเป้าไปที่ผู้ใช้ขั้นสูง

วิธีรับค่าสิทธิ์ chmod ที่เป็นตัวเลขบน Mac

ในการเริ่มต้น ให้เปิดแอป Terminal จาก /Applications/ บน Mac และใช้คำสั่งต่อไปนี้:

stat -f %A file.txt

ตัวอย่างเช่น คำสั่งนั้นอาจแสดงผลดังต่อไปนี้:

$ stat -f %A wget-1.18.tar.gz 644

โดยในตัวอย่างนี้ '644' คือค่าฐานแปดของการอนุญาตไฟล์นั้น

อีกทางหนึ่ง คุณสามารถใช้ -f และ %OLp (ใช่ นั่นคือตัวพิมพ์ใหญ่ 'o' และไม่ใช่ศูนย์) ผลลัพธ์จะเหมือนกันหากไฟล์เหมือนกัน:

stat -f %OLp /Applications/System\ Preferences.app

ตัวอย่างเอาต์พุตสำหรับคำสั่งนั้นอาจมีลักษณะดังนี้ แสดงสิทธิ์ค่าฐานแปดที่เป็นตัวเลขสำหรับรายการเป้าหมาย:

"

$ stat -f %OLp>"

ในตัวอย่างนี้ แอปพลิเคชัน “System Preferences” มีค่าสิทธิ์ฐานแปดเท่ากับ 775

คุณไม่จำเป็นต้องใช้เครื่องหมายคำพูด แม้ว่าคุณจะต้องการหลีกชื่อไฟล์หรือพาธด้วยเหตุผลบางประการ หรือเพื่อวัตถุประสงค์ในการเขียนสคริปต์ สิ่งเหล่านี้ก็ง่ายที่จะวางดังนี้:

"

stat -f %OLp>"

แฟล็ก -f ใช้สำหรับรูปแบบ คุณสามารถเกี่ยวกับตัวเลือกการจัดรูปแบบเฉพาะสำหรับเอาต์พุตสถิติจากหน้าคู่มือบน stat ด้วย 'man stat'

ในกรณีคำสั่งหลัง "O" (ตัวพิมพ์ใหญ่ o) มีไว้สำหรับรับเอาต์พุตฐานแปดโดยเฉพาะ

การทราบสิทธิ์ที่เป็นตัวเลขที่ถูกต้องของไฟล์หรือโฟลเดอร์นั้นมีประโยชน์อย่างมากด้วยเหตุผลหลายประการ และการรู้สิ่งนี้จะเป็นประโยชน์หากคุณกำลังปรับสิทธิ์ของรายการต่างๆ หรือแม้แต่หากคุณ กำลังย้ายไฟล์บน Mac และต้องการรักษาสิทธิ์ที่แน่นอนและตรวจสอบหลังจากข้อเท็จจริง มีประโยชน์อื่นๆ อีกนับไม่ถ้วนเช่นกัน โดยเฉพาะอย่างยิ่งหากคุณใช้งานเซิร์ฟเวอร์ทุกประเภทจาก Mac

คำสั่งเหล่านี้ควรทำงานเหมือนกันสำหรับการดึงสิทธิ์ฐานแปดใน macOS, MacOS หรือ Mac OS X ทุกรุ่น โดยไม่คำนึงว่าแบบแผนการตั้งชื่อจะใช้ตัวพิมพ์ใหญ่อย่างไร อย่างไรก็ตาม สิ่งที่น่าสังเกตคือวิธีการรับสิทธิ์เลขฐานแปดบน Mac นั้นแตกต่างจากส่วนอื่น ๆ ของโลก Linux ดังนั้นหากคุณมาจากโลก Linux ที่คุณใช้ Mac คุณจะต้องปรับแฟล็กคำสั่ง stat เพื่อให้ได้รับอย่างถูกต้อง สิทธิ์ในรูปแบบเลขฐานแปด เราจะกล่าวถึงอย่างรวดเร็วต่อไป

การรับสิทธิ์ของไฟล์แปดฐานจาก Command Line ใน Linux

เพื่อความชัดเจน เราจะพูดคุยสั้น ๆ เกี่ยวกับการรับค่าสิทธิ์ฐานแปดในโลกของ Linux ด้วย ซึ่งคุณสามารถใช้สิ่งต่อไปนี้เพื่อรับสิทธิ์ไฟล์ฐานแปด:

"

stat -c %a %n /Path/To/File"

คุณสามารถใช้คำสั่ง stat -c:

stat -c %a /Path/To/File.txt

ผลลัพธ์ของค่าตัวเลขจะเหมือนกันโดยไม่คำนึงว่า ตราบใดที่ไฟล์เป้าหมายที่ป้อนนั้นเหมือนกันแน่นอน

อีกครั้ง สองแนวทางหลังนี้เป็นแบบเฉพาะสำหรับ Linux และคุณจะต้องใช้วิธีการที่อธิบายไว้ข้างต้นเพื่อรับค่าฐานแปดของสิทธิ์ของไฟล์ใน Mac OS

คุณทราบวิธีการหรือวิธีการอื่นใดในการดึงค่าตัวเลขของการอนุญาตไฟล์บนเครื่อง Mac หรือไม่? แบ่งปันความคิดเห็นด้านล่าง!

วิธีรับสิทธิ์แปดไฟล์จาก Command Line ใน Mac OS