วิธีแก้ไขไฟล์สีเทาใน Finder


13

มีวิธีใดที่จะบังคับให้ Finder รีเฟรชข้อมูลที่ใช้งานอยู่ของไฟล์สีเทา (เข้าไม่ถึง) หรือไม่?

รายละเอียด:

ฉันย้ายไฟล์ที่ใช้งานไม่บ่อยจาก Mac (OS X 10.6) ไปยังเซิร์ฟเวอร์ไฟล์ของ Windows Server 2008 ฉันเพิ่งพบไฟล์จำนวนมากที่ Finder X ของ OS X แสดงเป็นสีเทา (เช่นถ้าไฟล์นั้นอยู่ในขั้นตอนการคัดลอก) ไฟล์ที่เป็นปัญหานั้นถูกต้องและครบถ้วน: ไม่มีข้อมูลเสียหายหรือสูญหาย ในความเป็นจริงฉันสามารถเข้าถึงไฟล์จาก Terminal หรือจากคอมพิวเตอร์ Windows ได้โดยไม่มีปัญหา แต่ Finder ยังคงคิดว่าพวกเขาควรได้รับการพิจารณาว่าไม่สามารถเข้าถึงได้

ฉันสามารถ "แก้ไข" ปัญหาโดยการคัดลอกไฟล์ต้นฉบับไปยังชื่อใหม่ลบไฟล์ต้นฉบับรอสักครู่หรือมากกว่านั้นจากนั้นเปลี่ยนชื่อไฟล์ใหม่เป็นชื่อเดิม (ถ้าฉันไม่รอนานพอใหม่ ไฟล์จะกลายเป็นสีเทาเมื่อเปลี่ยนชื่อเป็นชื่อเดิม)

โดยทั่วไปดูเหมือนว่า Finder ไม่สามารถล้างค่าสถานะ "ใช้งาน" หรือ "ไม่สมบูรณ์" บางอย่าง [คาดเดา]

ดังนั้นกลับไปที่คำถามเดิม: จะแก้ไขได้อย่างไร โดยหลักการแล้วฉันต้องการสแกนไดรฟ์เครือข่ายและค้นหาและแก้ไขไฟล์สีเทาทั้งหมดผ่าน Terminal หรือการดำเนินการแบบเรียกซ้ำดังนั้นฉันจึงสามารถแก้ไขได้ทั้งหมดโดยไม่ต้องเสียเวลามาก


มันเกี่ยวข้องกับการอนุญาตหรือไม่? คุณตรวจสอบแล้วหรือยัง
Martin Marconcini

การรีสตาร์ท Finder ทำงานหรือไม่
Itai Ferber

ไม่ใช่สิทธิ์: ไฟล์ที่ละเมิดนั้นสามารถเข้าถึงได้ผ่านเทอร์มินัล การรีสตาร์ท OS / X ไม่มีผลกระทบ
Robert Altman

คำตอบ:


8

วิธีนี้แก้ไขได้สำหรับฉัน! http://macadmins.psu.edu/news/2011/06/grayed_out_finder_folder

แล้วเกิดอะไรขึ้น? ปรากฏว่าวันที่สร้างโฟลเดอร์ถูกตั้งค่าเป็นวันที่สุ่มในปี 1943 ในขณะที่เราไม่แน่ใจว่ามันเกิดขึ้นได้อย่างไรเราก็หาวิธีแก้ไขมันได้

เราใช้สองสามไบนารีที่มาพร้อมกับเครื่องมือสำหรับนักพัฒนา, GetFileInfo และ SetFile GetFileInfo แสดงวันที่สร้างโฟลเดอร์ เรามองข้ามในตอนแรก แต่ด้วยการตรวจสอบอย่างใกล้ชิดทำให้ตาเราจับ

$ GetFileInfo การทดสอบ / ไดเรกทอรี: แอตทริบิวต์ "/ ผู้ใช้ / ผู้ใช้ / เดสก์ท็อป / ทดสอบ": avbstclinmedz สร้าง: 06/13/1943 06:13:00 แก้ไข: 06/13/2011 15:07:33

จากนั้นเราสามารถเปลี่ยนวันที่สร้างโดยใช้เครื่องมือ SetFile

$ SetFile -d 06/13/2011 การทดสอบ /

หลังจากตั้งค่าวันที่กลับเป็นเวลาที่เหมาะสมเราจะเห็นว่ามีการเปลี่ยนแปลงอย่างแท้จริง

$ GetFileInfo การทดสอบ / ไดเรกทอรี: แอตทริบิวต์ "/ ผู้ใช้ / ผู้ใช้ / เดสก์ท็อป / ทดสอบ": avbstclinmedz สร้าง: 06/13/2011 06:13:00 แก้ไข: 06/13/2011 15:07:33

โฟลเดอร์นั้นแสดงอย่างถูกต้องใน Finder และสามารถใช้งานได้อีกครั้ง นอกจากนี้เรายังพบว่าหากคุณสร้างนามแฝงของโฟลเดอร์คุณสามารถดูข้อมูลและย้ายออกได้ เมื่อย้ายออกไปยังโฟลเดอร์อื่นแล้วโฟลเดอร์เก่าสามารถลบได้


1
นี่จะทำให้รู้สึกมาก ถ้าฉันจำได้ถูกต้องฉันก็เห็นวันแปลก ๆ น่าเสียดายที่ (สำหรับการทดสอบทฤษฎี) ฉันได้ทำความสะอาดข้อผิดพลาดและฉันไม่ได้เห็นมันอีกซักพัก ขอบคุณสำหรับข้อมูล!
Robert Altman

5

ใช้ls -laเพื่อตรวจสอบว่าไฟล์มีคุณสมบัติเพิ่มเติมหรือไม่ ที่จะมีลักษณะคล้ายกับ:

-rwxr-xr-x@ 1 user1 staff 439734882 Aug 16 21:34 myfile.zip

ดูที่@ ตอนท้าย นั่นหมายถึงคุณสมบัติเพิ่มเติม

ในการดูคุณสมบัติเพิ่มเติมคุณจะต้องใช้xattr -l filenameคำสั่ง

ในหลายกรณีไฟล์ greyed out มีcom.apple.FinderInfoคุณลักษณะดังนี้:

com.apple.FinderInfo:
00000000  62 72 6F 6B 4D 41 43 53 00 00 00 00 00 00 00 00  |brokMACS........|
00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
00000020

หากต้องการลบแอททริบิวต์นั้นให้เรียกใช้xattr -d com.apple.FinderInfo filenameแล้วไฟล์จะกลับสู่ปกติ

หากคุณต้องการลบคุณลักษณะนั้นออกจากไฟล์ทั้งหมดซ้ำคุณสามารถเรียกใช้:

xattr -dr com.apple.FinderInfo .

อย่าพลาดจุด.ท้ายที่หมายถึงไดเรกทอรีปัจจุบัน

โพสต์ต้นฉบับ: https://tangentlin.wordpress.com/2013/10/18/greyed-out-files-in-mac-osx/


1
มีเพียงอันเดียวที่ใช้ได้กับฉันใน High Sierra
ริเวร่า

2

ฉันแก้ไขมันโดยใช้คำสั่งซ้ำในโฟลเดอร์สีเทา โฟลเดอร์ใหม่จะสามารถเข้าถึงได้และสามารถย้ายไฟล์ไปยังโฟลเดอร์อื่นได้ หลังจากย้ายไฟล์ลบทั้งสองโฟลเดอร์ (สีเทาและคัดลอก) ตอนนี้ทั้งสองว่างเปล่า


1

ลองลบแคช (~ / Library / Caches) แล้วเริ่มต้นใหม่ ประสบการณ์ของฉันเป็นเช่นนี้มักจะแก้ไขปัญหาที่เกี่ยวข้องกับไอคอนคี่


น่าเสียดายที่นี่ไม่มีผลกระทบ
Robert Altman

1

คุณสามารถลองซิงค์ไฟล์อีกครั้งโดยใช้rsyncเครื่องมือ:

$ rsync -aut /source/* /destination

หรือ (หากมีไฟล์มากเกินไป):

$ find /source/ -name \* -type f -exec rsync -at {} /destination/ ";"

นี่คือข้อโต้แย้งสำหรับ BSD rsync:

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
-u, --update                skip files that are newer on the receiver
-t, --times                 preserve modification times

หากคุณใช้ GNU rsyncให้ลองเพิ่ม:

-N, --crtimes               preserve create times (newness)

หมายเหตุ: คุณสามารถติดตั้ง GNU โดยrsyncbrew install rsync

-uในกรณีนี้จะไม่ช่วยยังพยายามโดยไม่ต้อง


@ อ่อนแอใช่ฉันใช้จริง GNU เพื่อทดสอบฉันได้ชี้แจงคำตอบ ลบออก-Nแต่คุณสามารถเพิ่มได้หากคุณใช้รุ่น GNU หรือใช้ไวยากรณ์ BSD
kenorb

การใช้ GNU rsync ร่วมกับการ-Nตั้งค่าสถานะทำงานให้ฉัน ฉันไม่แน่ใจว่ามันเป็นเพราะ-Nธง
Flimm

0

ยูเรก้า! ฉันพบสิ่งที่ทำให้เกิดปัญหา

ไฟล์จะถูกคัดลอกไปยังเครือข่าย Windows Server 2008 ที่ใช้ร่วมกันกับการจำลองแบบ DFS (ไปยังเซิร์ฟเวอร์อื่น) ยังไงก็ตาม Finder กำลังแคชสถานะ "ไม่ว่าง" ของไฟล์; และบางครั้งสิ่งนี้เกิดขึ้นในขณะที่ไฟล์กำลังถูกจำลองแบบ

การหลีกเลี่ยงปัญหาคือการใช้เทอร์มินัลเพื่อทำซ้ำไฟล์ลบไฟล์ต้นฉบับ WAIT !!! แล้วเปลี่ยนชื่อไฟล์ซ้ำเป็นชื่อเดิม (หากคุณไม่ต้องรอสำเนาของฉันจะกลายเป็นสีเทาเมื่อเปลี่ยนชื่อ)

นั่นคือ "อะไร"; ฉันยังหวังว่าจะมีคนอธิบายได้ว่าข้อมูลนั้นถูกเก็บไว้ที่ใด

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

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