summaryrefslogtreecommitdiff
path: root/rola-devtools/scripts/windows-folder-hide.ps1
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-06-17 21:33:40 +0800
committer魏曹先生 <1992414357@qq.com>2026-06-17 21:57:13 +0800
commitad0943f88ba9f5ed6eae198ecb4835c0f44701de (patch)
tree6a8eb1fee42e7ee173e74788dafeb27c52429683 /rola-devtools/scripts/windows-folder-hide.ps1
chore: initialize project structure and add core modules
Diffstat (limited to 'rola-devtools/scripts/windows-folder-hide.ps1')
-rw-r--r--rola-devtools/scripts/windows-folder-hide.ps143
1 files changed, 43 insertions, 0 deletions
diff --git a/rola-devtools/scripts/windows-folder-hide.ps1 b/rola-devtools/scripts/windows-folder-hide.ps1
new file mode 100644
index 0000000..0ab2632
--- /dev/null
+++ b/rola-devtools/scripts/windows-folder-hide.ps1
@@ -0,0 +1,43 @@
+# Check `last_check`
+
+$lastCheckFile = Join-Path $PSScriptRoot "last_check"
+$currentTime = Get-Date
+$timeThreshold = 10
+
+if (Test-Path $lastCheckFile) {
+ $lastCheckTime = Get-Content $lastCheckFile | Get-Date
+ $timeDiff = ($currentTime - $lastCheckTime).TotalMinutes
+
+ if ($timeDiff -lt $timeThreshold) {
+ exit
+ }
+}
+
+$currentTime.ToString() | Out-File -FilePath $lastCheckFile -Force
+
+# Hide Files
+
+Set-Location -Path (Join-Path $PSScriptRoot "..\..")
+
+Get-ChildItem -Path . -Force -Recurse -ErrorAction SilentlyContinue | Where-Object {
+ $_.FullName -notmatch '\\.temp\\' -and $_.FullName -notmatch '\\.git\\'
+} | ForEach-Object {
+ attrib -h $_.FullName 2>&1 | Out-Null
+}
+
+Get-ChildItem -Path . -Force -Recurse -ErrorAction SilentlyContinue | Where-Object {
+ $_.Name -match '^\..*' -and $_.FullName -notmatch '\\\.\.$' -and $_.FullName -notmatch '\\\.$'
+} | ForEach-Object {
+ attrib +h $_.FullName 2>&1 | Out-Null
+}
+
+if (Get-Command git -ErrorAction SilentlyContinue) {
+ git status --ignored --short | ForEach-Object {
+ if ($_ -match '^!!\s+(.+)$') {
+ $ignoredPath = $matches[1]
+ if ($ignoredPath -notmatch '\.lnk$' -and (Test-Path $ignoredPath)) {
+ attrib +h $ignoredPath 2>&1 | Out-Null
+ }
+ }
+ }
+}