พบสคริปต์เพื่อคัดลอกไฟล์ไปยังตำแหน่ง x ของกฎ


0

ฉันต้องการสร้างสคริปต์อัตโนมัติที่จะถามโฟลเดอร์ที่ระบุและในการเลือกฉันต้องการให้ค้นหาสิ่งต่อไปนี้และทำงาน x

  • หากไฟล์เป็น. mkv และไม่มี "ตัวอย่าง" ในชื่อไฟล์และเป็น <2GB คัดลอกไปยังตำแหน่ง x
  • หากไฟล์เป็น. mkv และไม่มี "ตัวอย่าง" ในชื่อไฟล์และ> คัดลอกไปยังตำแหน่ง 2GB> สำหรับไฟล์ใด ๆ ที่ไม่ตรงตามข้อกำหนดเหล่านี้ควรลบไฟล์พร้อมกับโฟลเดอร์พาเรนต์ที่เลือกไว้

คำตอบ:


1

คุณสามารถรันเชลล์สคริปต์แบบนี้ในโปรแกรมแก้ไขโค้ดอย่างTextMate :

d=~/Folder
find "$d" -name '*.mkv' -a ! -name '*sample*' -a -size -2G -exec cp {} ~/x \;
find "$d" -name '*.mkv' -a ! -name '*sample*' -a -size +2G -exec cp {} ~/z \;
rm -r "$d"
  • \; ใช้เวลาหนึ่งอาร์กิวเมนต์ในแต่ละครั้ง (\ + จะใช้เวลาหลายอาร์กิวเมนต์) แต่ในกรณีนี้การคัดลอกไฟล์ใช้เวลานานกว่าการเริ่มกระบวนการ cp ใหม่
  • 2G คือ 2 GiB (2 * 2 ^ 30 ไบต์)
  • + 2G และ -2G นั้นเป็นเอกสิทธิ์ แต่อาจจะไม่มีไฟล์ที่มี 2 Gib
  • {} ไม่จำเป็นต้องอ้าง
  • cp ไม่ได้ทำการแก้ไขหรือสร้างเวลาจนกว่าคุณจะเพิ่ม -p (หรือ -a, ซึ่งหมายถึง -p)
  • คุณสามารถใช้ถังขยะแทน rm -r

ฉันจะรวมสิ่งนี้เข้ากับการกระทำ "ขอรายการ Finder" ได้อย่างไร ดังนั้นมันจะส่งผ่านอินพุตโฟลเดอร์ไปยังสคริปต์หรือไม่
Imran

ไม่เป็นไรฉันคิดออก
Imran
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.