2
การอ้างชื่อไฟล์มีความปลอดภัยเพียงพอหรือไม่ในการใช้งาน `xargs sudo rm -rf`?
ฉันเขียนสคริปต์ที่ลบทั้งหมดยกเว้นไฟล์สองไฟล์สุดท้ายในโฟลเดอร์: #!/bin/bash ls -1 --quoting-style=shell-always /path/to/some/folder \ | head -n -2 \ | xargs printf -- "'/path/to/some/folder/%s'\n" \ | xargs sudo rm -rf สคริปต์นี้จะถูกเรียกใช้เป็นงาน cron ทุกวัน เหตุผลมีดังนี้: รับรายการไฟล์ทั้งหมดโดยใช้ls -1(เพื่อให้ได้หนึ่งไฟล์ต่อบรรทัด); นำสองคนสุดท้ายจากรายการใช้head -n -2; ตั้งแต่lsพิมพ์พา ธ ที่สัมพันธ์กันให้ใช้xargs printfสิ่งต่าง ๆ เพื่อผนวกเส้นทางโฟลเดอร์และทำให้เป็นพา ธ สัมบูรณ์ ส่งพวกเขาไปใช้sudo rm -rfxargs ทุกคนสามารถเข้าถึงโฟลเดอร์นี้เพื่อให้ทุกคนสามารถสร้างและลบไฟล์ใด ๆ ในโฟลเดอร์นี้ ปัญหาคือ: sudo rm -rfน่ากลัว …