ฉันจะลบแท็ก Finder ออกจากไฟล์ทั้งหมดในโฟลเดอร์และโฟลเดอร์ย่อยได้อย่างไร


9

ฉันจะลบแท็ก Finder ออกจากไฟล์ทั้งหมดในโฟลเดอร์ที่กำหนดและในโฟลเดอร์ย่อยได้อย่างไร


ฉันหวังว่าฉันจะได้คำตอบฉันก็อยากรู้อยากเห็นเช่นกัน หากคุณใช้งานสะดวกกับเชลล์คำสั่ง mdfind อาจเป็นส่วนหนึ่งของโซลูชันของคุณในที่สุด โชคดี.
Charlie Wilson

คำตอบ:


7

คุณสามารถใช้แท็กของHomebrew :

brew install tag
tag -r /path/*

คุณสามารถรวมสิ่งนี้กับคำสั่ง find เพื่อค้นหาไฟล์ / โฟลเดอร์ + แบบเรียกซ้ำ

find . -exec tag -r {} \;  -print

วิธีการหนึ่งใช้เกี่ยวกับการใช้บรรทัดสุดท้ายของรหัสในไดเรกทอรี? ฉันไม่ต้องการเมาแล้วเอาแท็กออกจากทุกโฟลเดอร์ในระบบของฉัน: find . -exec tag -r /path/ {} \; -print. นอกจากนี้ฉันสามารถเพียงแค่ cd ไปยังไดเรกทอรีและดำเนินการคำสั่งนั้นได้หรือไม่
Matt Swift

@Matt คำสั่ง find มีสององค์ประกอบ: พา ธ / ตัวกรองและการดำเนินการ find .จะใช้ไดเรกทอรีปัจจุบันที่คุณเคยใช้หรือคุณสามารถใช้find /path/to/folderและระบุเส้นทางที่นั่น ไม่มีตัวกรองให้ไฟล์และโฟลเดอร์ทุกอันที่อยู่ใต้เส้นทางที่กำหนดจะตรงกัน -exec …;จะดำเนินการคำสั่งแทนที่{}ด้วยแต่ละเส้นทางที่ตรงกัน -printพิมพ์เส้นทางการจับคู่ด้วย คุณสามารถ 'เรียกใช้คำสั่งแห้ง' โดยลบ 'exec' และเพียงแค่ใช้find . -print(ซึ่งเทียบเท่ากับfind .) ซึ่งจะพิมพ์รายการไฟล์ที่ตรงกันโดยไม่ต้องทำอะไรกับพวกเขา
grg

4

คุณยังสามารถใช้xattr:

xattr -dr com.apple.metadata:_kMDItemUserTags ~/folder
xattr -dr com.apple.FinderInfo ~/folder

หากคุณไม่ลบแอcom.apple.FinderInfoททริบิวต์ส่วนขยาย Finder จะแสดงฉลากสีสำหรับแท็กที่มีสี หากคุณไม่ต้องการเก็บแอตทริบิวต์เพิ่มเติมไว้คุณสามารถรันxattr -cr ~/folderได้

คุณสามารถใช้find -xattrnameหรือmdfindค้นหาไฟล์ด้วยแท็ก:

find ~/folder -xattrname com.apple.metadata:_kMDItemUserTags
mdfind -onlyin ~/folder kMDItemUserTags=\*
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.