Câu trả lời:
ATTRIB +H /s /d C:\.*
là lệnh để ẩn bất cứ thứ gì, các thư mục bao gồm bắt đầu bằng dấu chấm
Điều này sẽ không liệt kê các tệp (như đã nêu dưới đây), nhưng sẽ nhấn vào mọi tệp mà nó có thể truy cập và áp dụng thuộc tính Ẩn.
Khi điều này được thực hiện, bạn có thể đảm bảo rằng Tùy chọn thư mục được đặt để ẩn các tệp ẩn. Nhấp vào Bắt đầu , gõ folder options
và nhấn Enter. Nhấp vào tab Xem , sau đó chọn Không hiển thị các tệp, thư mục hoặc ổ đĩa bị ẩn trong Tệp và Thư mục \ Các tệp và thư mục ẩn . Nhấn Áp dụng , sau đó OK (hoặc chỉ OK ).
Users
thư mục của tôi rất biết ơn
CreateFile
gọi CREATE_ALWAYS
nhưng không có FILE_ATTRIBUTE_HIDDEN
cờ được chỉ định rõ ràng , các thao tác sẽ không thành công trên các tệp ẩn. Một số công cụ nhận thức được điều này, nhưng với một số (xin lỗi, đừng nhớ chính xác những gì tôi đã gặp phải), điều này xảy ra âm thầm và vấn đề đáng chú ý duy nhất là cấu hình hoặc nhật ký bằng cách nào đó không được cập nhật. Kiểm tra ví dụ ở đây để biết thêm chi tiết: stackoverflow.com/a/13215998/116546
Đơn giản:
Trong Windows Explorer
.folder
bạn muốn ẩn;properties
, sau đó bấm vào general
tab;hidden
.Làm xong.
PS Chỉ được kiểm tra trên Windows 7 Professional. PPS Tôi nhận thấy câu hỏi của bạn yêu cầu làm điều này tự động. Rõ ràng điều này sẽ không cắt nó, nhưng có lẽ độc giả thấy nó hữu ích.
Có thể có trong C #, sử dụng System.IO.FileSystemWatcher. Mã sẽ là một cái gì đó như thế này. Chỉ cần biên dịch nó và đặt nó trong thư mục Start Up. Nhưng mã này không ẩn các tập tin hiện có. Vì vậy, trước tiên hãy chạy mã từ Luke và hơn mã này. Bạn cần System.IO và System.Security.Permissions
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
public static void Run()
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = "C:\\";
watcher.IncludeSubdirectories = true;
watcher.Filter = "*.*";
watcher.Renamed += new RenamedEventHandler(OnRenamed);
watcher.Created += new FileSystemEventHandler(watcher_Created);
watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.DirectoryName;
watcher.EnableRaisingEvents = true;
Console.WriteLine("Started...");
while (true) ;
}
static void Check(string filename)
{
string name = Path.GetFileName(filename);
if (name.StartsWith(".") && !File.GetAttributes(filename).HasFlag(FileAttributes.Hidden))
{
File.SetAttributes(filename, File.GetAttributes(filename) | FileAttributes.Hidden);
}
}
static void watcher_Created(object sender, FileSystemEventArgs e)
{
Check(e.FullPath);
}
private static void OnRenamed(object source, RenamedEventArgs e)
{
Check(e.FullPath);
}
}
Windows sẽ ẩn các tập tin với cờ ẩn hoặc hệ thống . Hoặc các tập tin có thể được ẩn bằng ACL. Windows không ẩn các tệp dựa trên tên tệp.
Để rõ ràng có Windows để ẩn các tệp theo tên tệp, bạn cần tạo rõ ràng tính năng này. Trình điều khiển hệ thống tệp (thường được sử dụng để virus có "tính năng" này) hoặc hack phần mở rộng shell sẽ hoạt động trong trường hợp này.
Bên cạnh đó, bạn có thể giả mạo tính năng này bằng cách tắt "xem phần mở rộng tệp" trong Tùy chọn thư mục, vì, đối với Explorer, một tệp bắt đầu bằng dấu chấm là một tệp có phần mở rộng, nhưng không có tên.
Folder Options
> View
> [ ] Hide extensions for known file types
.
Tôi không nghĩ có cách nào để nó tự động xảy ra, nhưng bạn có thể thử sử dụng lệnh ATTRIB để ẩn các tệp đó:
ATTRIB + H
Sau đó, đảm bảo rằng bạn đã cấu hình Explorer để không hiển thị các tệp ẩn.