ฉันต้องการตั้งค่าการอนุญาต 755 ในทุกไฟล์และไดเรกทอรีย่อยภายใต้ไดเรกทอรีเฉพาะ แต่ฉันต้องการรัน chmod 755 เฉพาะสำหรับองค์ประกอบเหล่านั้นซึ่งไม่ได้รับอนุญาต 755
find /main_directory/ -exec chmod 755 {} \;
หากfind
คำสั่งส่งคืนรายการแบบยาวสิ่งนี้จะใช้เวลานาน ฉันรู้ว่าฉันสามารถใช้คำสั่ง stat เพื่อตรวจสอบการอนุญาตระดับไฟล์ Octal ของแต่ละองค์ประกอบจากนั้นใช้ if-else เพื่อสลับการอนุญาตไฟล์ แต่มีวิธีการบรรทัดเดียวที่ใช้find
และxargs
ก่อนอื่นตรวจสอบสิทธิ์ไฟล์ / ไดเรกทอรีที่มี แล้วใช้chmod
เพื่อเปลี่ยนเป็น 755 หากตั้งค่าเป็นอย่างอื่น
u+rw,go+r,go-w,ugo+X
- จดเมืองหลวง