আমার পরিস্থিতিতে আমার কাছে ইমেজের একটি বিশাল ফোল্ডার রয়েছে যা আমার ওয়ালপেপারটি চক্রের মাধ্যমে করে। আমি কিছুক্ষণ পরে কিছুটা বিরক্ত হয়ে এগুলি মুছতে চাই বা মাঝে মাঝে ভাবতে পারি যে চিত্রটির নাম কী কারণ এতে চিত্রটির বর্ণনা থাকতে পারে।
আমি উপরের মতামতের ভিত্তিতে 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');
চিত্র মুছুন (মুছে ফেলুন wallpaper.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 '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)