मेरी स्थिति में मेरे पास छवियों का एक विशाल फ़ोल्डर है जो मेरे वॉलपेपर चक्र के माध्यम से है। मैं थोड़ी देर के बाद कुछ ऊब गया और उन्हें हटाना चाहता हूं या कभी-कभी मुझे बस आश्चर्य होता है कि छवि का नाम क्या है क्योंकि इसमें छवि का विवरण हो सकता है।
मैंने ऊपर दिए गए फीडबैक के आधार पर 2 लिपियों का निर्माण किया - एक को वर्तमान छवि पथ और एक इसे हटाने के लिए। केवल विंडोज 10 पर यह परीक्षण किया गया।
छवि पथ प्राप्त करें (getwallpaper.ps1)
$bytes=(New-Object -ComObject WScript.Shell).RegRead("HKEY_CURRENT_USER\Control Panel\Desktop\TranscodedImageCache")
$wallpaperpath=[System.Text.Encoding]::Unicode.GetString($bytes[24..($bytes.length-1)])
$wallpaperpath=$wallpaperpath.substring(0, $wallpaperpath.IndexOf("jpg", 0, $wallpaperpath.Length)+3)
write-output $wallpaperpath
Write-Host -NoNewLine 'Press any key to continue...';
$null = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown');
छवि हटाएं (हटाएं
$bytes=(New-Object -ComObject WScript.Shell).RegRead("HKEY_CURRENT_USER\Control Panel\Desktop\TranscodedImageCache")
$wallpaperpath=[System.Text.Encoding]::Unicode.GetString($bytes[24..($bytes.length-1)])
$wallpaperpath=$wallpaperpath.substring(0, $wallpaperpath.IndexOf("jpg", 0, $wallpaperpath.Length)+3)
write-output $wallpaperpath
Write-Host -NoNewLine 'Delete the file (y=yes)?'
$KeyOption = 'Y','N'
while ($KeyOption -notcontains $KeyPress.Character) {
$KeyPress = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
if($KeyPress.Character -eq 'y') { Remove-Item $wallpaperpath }
}
Write-Host
[Environment]::Exit(0)