From: Edward Delaporte Date: Wed, 19 Feb 2025 22:23:16 +0000 (-0600) Subject: Add function to quickly find journal files X-Git-Url: https://apps.delaporte.us/gitweb/dotfiles.git/commitdiff_plain/cba7535866e98219c5eb42539194f94170328a8e Add function to quickly find journal files --- diff --git a/files/Microsoft.PowerShell_profile.ps1 b/files/Microsoft.PowerShell_profile.ps1 index e39aab2..7aef53d 100644 --- a/files/Microsoft.PowerShell_profile.ps1 +++ b/files/Microsoft.PowerShell_profile.ps1 @@ -29,10 +29,49 @@ function journal { } nvim $path } + function dotfiles { nvim "$HOME\dotfiles" } +function open { + param ( + [string]$searchText + ) + $directories = @( + "$HOME\Box\Journal", + "$HOME\Box\SecDevLimited", + "$HOME\Box\Privacy & Cybersecurity\Cybersecurity Development" + ) + + $totalFiles = 0 + $processedFiles = 0 + + foreach ($directory in $directories) { + if (Test-Path $directory) { + $totalFiles += (Get-ChildItem -Path $directory -Recurse -File).Count + } else { + Write-Host "Directory '$directory' does not exist." + } + } + + $resultFiles = @() + $textFileExtensions = @(".txt", ".log", ".csv", ".json", ".xml", ".md") + foreach ($directory in $directories) { + Get-ChildItem -Path $directory -Recurse -File | Where-Object { $textFileExtensions -contains $_.Extension } | ForEach-Object { + $fileContent = Get-Content -Path $_.FullName -Raw + + if ($fileContent -match $searchText) { + $resultFiles += $_.FullName + } + $processedFiles++ + Write-Progress -Activity "Searching Files" -Status "$processedFiles / $totalFiles files processed" -PercentComplete (($processedFiles / $totalFiles) * 100) + } + } + nvim $resultFiles +} + + # Vi New-Alias vi nvim New-Alias vim nvim