題:
為什麼要創建點下劃線._文件,如何避免使用它們?
nimcap
2011-05-30 00:26:39 UTC
view on stackexchange narkive permalink

我在不同位置的不同計算機上使用不同的操作系統。我正在使用USB閃存盤保存文件(源代碼等)。 _ 前綴。

問題

為什麼創建 ._ 文件?

他們的目的是什麼?

如何避免它們?

我也討厭他們,但我學會了與他們和平共處。
如果將閃存驅動器格式化為HFS +格式,則應該禁止創建._文件,但是我不知道未指定的其他操作系統上存在哪些選項來讀取HFS +卷。
相似:[非Mac網絡共享上的點文件和其他元數據](http://apple.stackexchange.com/q/99/8546)(2010)
這不是理想的方法,但是`ls --ignore =“ ._ *”`作為別名或鍵綁定有很長的路要走。
就像@geekosaur所說的那樣,這個問題很難避免,如果您使用Apple文件工具。但是,如果您僅使用命令行工具和某些第三方工具,並且從未使用Finder寫入USB,則不會創建它們。
該行為不僅限於Apple軟件。示例:Microsoft Office 2011保存到不支持HFS類型代碼和創建者代碼的文件系統時,需要`._`文件。
@GrahamPerrin-我的意思是Apple的文件複製工具-是的,任何使用文件fork的應用程序(即Apple的庫)都將擁有它們。如果使用僅使用BSD文件庫的工具,則沒有_文件。
十二 答案:
geekosaur
2011-05-30 00:31:13 UTC
view on stackexchange narkive permalink

您無法避免使用它們(但是請參閱Saeid Zebardast的dot_clean答案-如果需要,可以將其從目錄中刪除)。創建它們是為了存儲文件信息,這些文件信息否則將進入HFS +(Apple本機)或Unix / UFS卷的擴展屬性中;在早期的Mac OS中,這將是資源派生。 Finder文件操作將自動創建它們以存儲圖標信息,此外Time Machine還將在其中存儲一些信息,因此,如果您複製通過TM備份的文件,它也會復制該信息。

(這是沒什麼新東西;我注意到XP和以後的版本也留下了各種各樣的污垢,儘管相當沒那麼多。)

我同意,“草皮”是準確的描述:)
我注意到當我使用顏色標籤(使用Path Finder 7)時,我的Mac在我的linux samba服務器上留下了麻煩。每個彩色項目都有一個._ 文件。
在我們的linux samba文件服務器中,我們的情況相同。由於我們不需要文件的顏色元數據,因此我們在`smb.conf`中使用了`veto files = /._*/`和`delete veto files`選項,以防止創建此類文件。相反,我們保留.DS_STORE文件,因為它們對於設置文件排序很有用,並且每個目錄只有一個。
至少在Windows上,您可以關閉此功能!
@gerlos感謝您的否決文件提示!認為它合併:)
贊成使用“糞便”來描述這一點。
有什麼方法可以在Windows上分析這些糞便的內容嗎?看看他們是否有興趣或有資格進行堆肥... 我們周圍有一些mac-turds,但我們團隊中再也沒有mac-user。
+1交叉張貼到[English Language&Usage](https://english.stackexchange.com/)以獲得新詞“ turd”。或[urbandictionary](https://www.urbandictionary.com/define.php?term=Turd)。
Saeid Zebardast
2014-12-25 20:04:48 UTC
view on stackexchange narkive permalink

您可以使用dot_clean命令刪除或合併._文件:

  dot_clean PATH_OF_FOLDER_OR_DRIVE  

如果將文件移至linux,或者俱有 Git Bash ,並有權使用 find 命令,您也可以執行以下操作:

  find。 -類型f -name'._ *'-刪除 

,它們消失了!

其他答案並沒有真正回答“如何避免它們?”部分。確實如此。謝謝!
來自`man dot_clean`:`對於每個目錄,dot_clean根據給定參數指定的規則,將所有._ *文件與其對應的本機文件遞歸合併。默認情況下,如果._文件中還存在本機文件上的屬性,則將使用最新的屬性。 該命令不僅會刪除某些點文件,還會覆蓋每個文件夾的先前/本機屬性。請謹慎使用。
不知道是否在這裡提到它,但是請小心刪除大量的._文件。他們可能會刪除文件/文件夾圖標,註釋,標籤等。請確保無論您在何處刪除它們,這都不是問題
Graham Perrin
2012-05-12 12:56:29 UTC
view on stackexchange narkive permalink

.DS_Store和._文件的目的

http://diigo.com/0qiwp用於獲取 http://lists.apple的帶註釋的視圖。 com / archives / applescript-users / 2006 / Jun / msg00180.html,其中馬特·迪瑟奇(Matt Deatherage,蘋果公司前工程師)提供了解釋。也 arnotify»關於.DS_Store的起源(2006-10-01)。

由於我看到防止或丟失 ._ 副本的用戶數據(文檔內容)丟失,我同意:

  • 事物“消失於以太”是不可接受的。

._文件的目的

除了geekosaur接受的答案中概述的目的,這裡還有一些示例在某些情況下,Apple和第三方應用程序使用需要 ._ 的方式...…


在此期間的文件業務Finder的副本

請參閱我的答案有關堆棧溢出的問題。


NeoOffice使用不贊成使用的代碼

沒有創建者代碼的HFS類型代碼 NO%F 是:

  • 僅在適當的地方適當使用。

NeoOffice示例1

NeoOffice 3.2.1補丁5保存到JHFS +:

  [macbookpro08-centrim:〜] gjp22%xattr -l / Users / gjp22 / Desktop / product \ of \ NeoOffice \ 3.2.1 \ Patch \ 5.docx com.apple.FinderInfo:00000000 4E 4F 25 46 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | NO%F ............ | 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ | 00000020  

NeoOffice示例2

NeoOffice 3.2.1修補程序5保存到USB f帶有MS-DOS FAT32的睫毛驅動器,通過BlueHarvest進行清潔:

  2012-05-12 06:42:08.349 BlueHarvest [31146]:已刪除NeoOffice 3.2.1補丁5.docx中的._product /Volumes/FAT32/example.

NeoOffice示例3

NeoOffice 3.2.1修補程序5保存到OS X掛載的文件系統類型為 webdav的捲(不是SharePoint),通過BlueHarvest進行清潔:

  [macbookpro08-centrim:〜] gjp22%mount | grep dav
https://www.box.net/dav/在/ Volumes / dav上(webdav,nodev,noexec,nosuid,由gjp22安裝)[macbookpro08-centrim:〜] gjp22%xattr -l / Volumes / dav / product \ of \ NeoOffice \ 3.2.1 \ Patch \ 5.docx [macbookpro08-centrim:〜] gjp22% 
  • NeoOffice保存到 webdav 文件系統不包含擴展屬性
  • 不需要BlueHarvest。

提示:如果Microsoft Office失敗,並且 webdav 保存到Microsoft SharePoint(請參見下文),則NeoOffice成功。


Microsoft使用不推薦使用的代碼

最新版本的Office 需要一個 HFS類型代碼 .docx )之類的格式時,> HFS創建者代碼。因此-似乎在保存到不支持 com.apple.FinderInfo 擴展屬性中的那些值的文件系統時:

  • Microsoft Office無法可靠地保存而不創建多個 ._ 文件。

Microsoft示例1

Word 2011 14.2.1使用文件保存到OS X掛載的捲中系統類型 webdav ,而不是SharePoint,通過BlueHarvest進行清潔:

  5月11日18:32:49 macbookpro08 BlueHarvest [14649]:BlueHarvest已啟動。5月11日18:38: 37 macbookpro08 BlueHarvest [14649]:在/ Volumes / dav中刪除了._Word工作文件D_1.tmp。5月11日18:39:57 macbookpro08 BlueHarvest [14649]:刪除了._Hello世界,這是/ Volumes / dav中的Microsoft.docx。 5月11日18:42:28 macbookpro08 BlueHarvest [14649]:已刪除._Hello世界,這是/ Volumes / dav中的Microsoft.docx。 

Microsoft示例2

Word 2011 14.2.2(120421)在相同環境中保存 example.docx

  2012-05-12 08:01:07.692 BlueHarvest [4 1131]:已刪除/ Volumes / dav中的._Word工作文件D_769960778.tmp。 

Microsoft示例3

Word 2011 14.2.2(120421)將 another.docx 保存在同一環境中,然後退出然後重新打開,編輯然後保存,編輯然後關閉並保存:

  2012-05-12 08:15:04.252 BlueHarvest [41131]:在/Volumes/dav.2012中刪除了._Word工作文件D_.tmp。2012-05-1208:18:48.735 BlueHarvest [41131]:已刪除._another.docx在/Volumes/dav.2012-05-12 08:21:12.658中BlueHarvest [41131]:在/ Volumes / dav中刪除了._Word工作文件D_2.tmp。 

提示:當文件系統類型為 webdav 時,Microsoft Office 2011無法保存到Microsoft SharePoint,因為SharePoint不支持以點號開頭的文件名。(句點) 。請參閱對在10.6中是否可以將SharePoint作為卷裝載的不同答案?


類型和創建者代碼:背景,Apple Developer

十多年前,蘋果公司開始鼓勵第三方開發人員遠離類型代碼和創建者代碼。在文件系統編程指南的附錄B中,文件類型和創建者代碼建議代碼已被棄用:

通常已棄用,您可能會在舊文件和應用中看到它們以及系統中的某些地方。

推薦閱讀:[擴展屬性:好,不好,不好。](http://www.lesbonscomptes.com/pages/extattrs.html)(2015-07-14)
user149666
2015-10-02 00:50:47 UTC
view on stackexchange narkive permalink

這些文件是由操作系統創建的,以加快搜索速度,存儲有關文件夾首選項的元數據(操作系統使用的數據)等。Windows和OS X都具有此類文件。以下是從 http://annoying-file-be-gone.snack.ws/faq.html中提取的這些文件的說明:

.DS_Store – Apple OS X操作系統中用於存儲文件夾的自定義屬性(例如圖標的位置或背景圖像的選擇)的文件名(請參閱更多

.Spotlight-V100 –此文件包含信息以加快“ Spotlight搜索”功能。如果您對該文件夾中的項目執行了另一次Spotlight搜索,則刪除只會強制將該信息重新索引。

.apDisk –該文件包含有關共享文件夾的信息,並且可以被安全刪除,因為如果蘋果需要它會自動重新創建。

.VolumeIcon.icns –此文件用於存儲卷的圖標(USB設備)如果該卷使用自定義圖標而不是默認圖標。如果您希望設備繼續使用此默認圖標,或者要清除的文件夾/設備包含應用程序,則可能需要將此文件保留在系統中。附帶說明一下,如果您想為設備創建自定義圖標,則可以創建/下載 .icns 文件並將其重命名為 .VolumeIcon.icns 並放置在您的文件夾/設備。

.fseventsd –此文件用作文件系統事件守護程序的緩衝區。如果您正在使用監視此文件夾/設備的程序,則此文件可能用於存儲臨時數據。

.Trash & .Trashes –這些文件夾用於保存已刪除項目,其方式與擴展塢中的“廢紙rash”圖標相同。如果您的文件夾/設備上不需要此功能,則可以清理此文件夾以節省空間。

.TemporaryItems –當文件被複製/移動/添加時,操作系統使用此文件保存臨時數據。如果您正在運行正在訪問要清理的文件夾/設備的任何程序,並且沒有在復製或移動任何文件,則此文件可以僅保存舊數據進行緩存。

calum_b
2011-05-31 22:13:27 UTC
view on stackexchange narkive permalink

要最大程度地減少非HFS +格式驅動器上的點下劃線文件的存在,可以使用 BlueHarvest首選項窗格。

BlueHarvest是一款出色的產品,但某些第三方評論具有誤導性。測試結果表明創建是“沒有阻止”的;該創建是允許的,並且BlueHarvest可以根據用戶的喜好清除某些創建的內容。
user3636223
2018-04-03 00:16:12 UTC
view on stackexchange narkive permalink

使用 find。-name“ ._ *”-鍵入f -print 以列出本地路徑中的文件

要刪除這些內容且沒有大量警告或確認,請使用 find。-name“ ._ *”-鍵入f -delete 刪除所有文件。

歡迎詢問不同!儘管您的答案顯示瞭如何刪除文件,但並未回答OP中為什麼要避免什麼,如何避免和如何避免的問題。
@bjbk此答案告訴您如何刪除文件,就像Saeid Zebardast極力支持的答案一樣。我同意沒有人真正提出如何“避免”它們,以及為什麼它們出現。
Mazzieh71
2015-06-28 18:54:34 UTC
view on stackexchange narkive permalink

您可以通過FileZilla或類似的文件管理器將其刪除。

不知道為什麼這個被否決了,因為大多數被讚成的答案甚至都沒有給出解決方案。我認為這是最簡單的解決方案...由於._和.DS_Store是與Finder相關的文件,因此顯而易見的解決方案是避免使用finder。我個人更喜歡使用Transmit,但是Filezilla是一個很好的免費替代品。
我沒有拒絕投票,但這是不受歡迎的建議,並且錯過了要求預防而不是治療的問題的意圖。誰想花一半時間刪除這些不斷生成的文件?問:“我該如何處理我們城市的亂拋垃圾問題?”答:“把它撿起來,放進垃圾桶,du。”
Wizbang-FL
2016-01-14 17:48:18 UTC
view on stackexchange narkive permalink

這真的很簡單,NTFS(當前Windows)FAT32(舊Windows)對於權限,分配給該文件的創建程序,創建日期,修改日期,標籤,文件註釋,圖標等內容具有非常特定的數據結構。以及其他元數據。您還將注意到,相同的屬性不會在其他操作系統中顯示。 (即IE創建日期可能是1990年1月1日,並且其他OS不能訪問其他元數據。每當同時使用從HFS到NTFS或FAT32的計算機以及寫有本機FAT32或NTFS的計算機兩者時。或._文件以及DS存儲文件將顯示出來。這表明操作系統處理的上述各種元素的不兼容因素不一致,因此,如果您要在這些文件之間來回切換,則可能需要保留這些文件操作系統以使用這些文件。如果您僅使用一個或另一個操作系統,請確保已正確格式化媒體(硬盤驅動器,SD卡等),或者確保驅動程序允許您的操作系統寫入非本機驅動器格式您的操作系統。(這兩個OSX均允許其使用本機屬性來寫入NTFS & FAT32文件,並且對於Windows 7可以使用本機屬性將& 8寫入HFS + & EXFat(Linux)驅動器。)它們不是免費的,但是如果你做了很多背第四步可以消除驅動器中多餘的重複數據。

user249654
2019-12-07 18:43:35 UTC
view on stackexchange narkive permalink

使用rsync 它不會創建._文件

這些在特定情況下不是必需的嗎?在這些情況下,rsync是否會導致數據丟失?https://apple.stackexchange.com/a/57836/5472
Jim VdPas
2016-01-09 07:05:38 UTC
view on stackexchange narkive permalink

我一直在使用以下方法來簡化閃存驅動器上的.em前綴文件消除:從Apple計算機中刪除閃存驅動器,將其插入Windows計算機中,在閃存驅動器中搜索“。 *。*”,然後當搜索顯示帶有._前綴的文件時,將其刪除。我從不刪除.Trashes或.DS Store文件。到目前為止沒有問題。我希望我不會給自己帶來未來的問題。

手動刪除?如果您是Mac用戶,則擁有Windows計算機的所有權?我知道您只是在記錄適合您的方法,但是我無法想像有人遵循您的方法。
T. Parliament
2016-09-20 18:36:01 UTC
view on stackexchange narkive permalink

是的,我們中的一些人同時在Mac和Windows計算機上使用過,而我曾經使用這種方法。而且,如果您要使用一堆USB文件來播放幻燈片.jpg文件,則必須擺脫那些令人討厭的._文件,然後再進行播放。經過大量搜索之後,我找到了一種使用Mac刪除._文件的方法:

使用終端:

  • ls -a 將列出所有文件,包括以 ._
  • 開頭的文件。
  • 僅從目錄中刪除一個文件: rm -rf ._whateveryourfilenameis.jpg
  • 要刪除所有 ._ 文件: rm -rf ._ *
  • 刪除不需要的目錄包括 .Trashes rm -r .Trashes *

將我的USB清理乾淨,用作電視輸入

whyoz
2017-05-23 01:49:35 UTC
view on stackexchange narkive permalink

刪除與Git,Visual Studio和Xcode相關的._時要小心!我有一個包含很多.mov和圖像的應用程序,這些“ ._”文件顯示為已提交。我通過Visual Studio Team Explorer的更改將它們刪除,並且該項目文件夾以某種方式從大約500MB膨脹到40GB而沒有添加文件...仍然不確定到底發生了什麼,但是我猜想它與刪除這些文件有關,因此每次提交都被緩存了每個.mov和圖片多次後,我才開始流行。在Finder>所有文件中,我看到每個.mov和.png重複了20-30次。

只需在您的.gitignore文件中添加“ ._ *”,當在iOS Xcode項目中使用TFS時,它們就不會顯示為更改後的文件。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...