जवाबों:
कुछ समस्याओं के बाद (अट्रिब्यूट कमांड कुछ वाइल्डकार्ड की अनुमति नहीं देता) मैं इस लाइन के साथ आया:
@for %%X in (.*.*) do attrib +h %%X
बस इसे एक बैच फ़ाइल (.bat) डालें और यह चाल (उस निर्देशिका के लिए) करता है।
यदि आप इसे कुछ निर्देशों के लिए चाहते हैं, तो इसे दिन में एक बार उस निर्देशिका में चलाने के लिए निर्धारित करें।
आशा है कि यह आपकी जरूरत है
Powershell का उपयोग करके एक स्क्रिप्ट फ़ाइल (जैसे heredotfiles.ps1) में निम्नलिखित को सहेजें और जब भी आप डॉट फ़ाइलों को छिपाने के लिए नहीं चाहते हैं तो इसे चलाएं।
बेशक निम्नलिखित एक-लाइनर को "-प्रेशर" के लिए उपनाम और "-f" और "-r" के लिए "-recse" का उपयोग करके सरल बनाया जा सकता है, लेकिन शिक्षाप्रद होने के लिए मैंने इसे पूर्ण रूप में लिखा है:
Get-ChildItem "C:\" -recurse -force | Where-Object {$_.name -like ".*" -and $_.attributes -match 'Hidden' -eq $false} | Set-ItemProperty -name Attributes -value ([System.IO.FileAttributes]::Hidden)
मूल रूप से Get-ChildItem -recurse -force सभी आइटम प्राप्त करता है और सभी फ़ोल्डरों में पुन: प्रदर्शित होने के लिए छिपे हुए आइटम को दिखाने के लिए खोज करता है। फिर हम उन फ़ाइलों और फ़ोल्डरों की खोज करते हैं जो डॉट के साथ शुरू होते हैं और केवल उन फ़ाइलों का चयन करते हैं जिनमें छिपी हुई विशेषता होती है। हमने उन सभी फाइलों को सूचीबद्ध कर लिया है, जिनके सेट-सेप्रोपरेट्टी का उपयोग करके हमने उनकी विशेषताओं को छिपाया है।
Where-Object
आवश्यक Set-ItemProperty
है। यह बस के रूप में अच्छी तरह से किया जा सकता है Get-ChildItem ".*" -Recurse -Force | ForEach-Object { $_.Attributes += "Hidden" }
।
डिस्क पर सभी डॉट फ़ाइल / निर्देशिकाओं को छिपाने के लिए (केवल एक निर्देशिका में), मुझे लगता है कि यह उत्तर सबसे अच्छा काम करता है:
ATTRIB +H /s /d C:\.*
@for /d %%X in (.*.*) do attrib +h %%X