Windows
無法在 Windows 上打開用 Cygwin 修改的文件,ls -l 輸出中的線索
我無法再打開下面輸出中指示的 tabs.html 和 tabs.js 文件(四個文件中的第 2 個和第 3 個)。使用 cygwin 我為它們應用了一個更新檔。
我相信線索在 ls -l 輸出中。具體來說,與其他文件不同,如果這是 *nix 而不是 Windows/Cygwin,則通常是權限資訊的末尾。
在第一個欄位中,我可以打開的文件有一系列以加號結尾的破折號:’———-+’ 但我無法再打開的文件沒有終止 ‘+ ‘。’+’ 表示什麼以及如何修改權限以使其恢復,請記住這是使用 Cygwin(在 Windows 7 上),如果這會有所不同。
提前致謝:
----------+ 1 George None 144 Jun 14 17:10 tabs.css ---------- 1 George None 3165 Jun 15 06:26 tabs.html ---------- 1 George None 4084 Jun 15 06:26 tabs.js ----------+ 1 George None 252 Jun 14 17:10 tabs-adv.css
加號表示文件具有不映射到 POSIX 權限的替代訪問控制方法集。即Windows ACL 或類似的東西。您需要檢查帶有 + 號的文件以找出可能在 Cygwin 之外的文件。這些文件很可能是由不支持 Cygwin 的二進製文件創建或修改的。
您還可以使用
getfacl
,setfacl
,cacls
,xcacls
查看或設置非 POSIX 映射權限。另一種選擇是添加 POSIX 權限,以便您的 Cygwin 使用者可以訪問它們,儘管我不確定他們將如何與其他權限互動,但您可以嘗試
chmod 640 tabs*
看看它是否有幫助。這是來自
info ls
Cygwin,Following the file mode bits is a single character that specifies whether an alternate access method such as an access control list applies to the file. When the character following the file mode bits is a space, there is no alternate access method. When it is a printing character, then there is such a method. GNU `ls' uses a `.' character to indicate a file with an SELinux security context, but no other alternate access method. A file with any other combination of alternate access methods is marked with a `+' character.