Конвертировать скрипт для использования щелчка мыши вместо клавиатуры

У меня есть эти сценарии, которые дефрагментируют мои жесткие диски. Можно ли переписать их, чтобы я мог использовать мышь, чтобы сделать выбор, а не вводить выбор с клавиатуры? Я включил и powershell, и пакетный скрипт, но они оба выполняют одни и те же команды.

Пакетный скрипт

@echo off
title Defragment and Optimize Drives

echo.Choose Optimization:

:choice
echo.
echo.
echo.  [1]   Trim (C:)WINDOWS 10
echo.
echo.
echo.  [2]   Defragment (C:)WINDOWS 10
echo.
echo. 
echo.  [3]   Trim (D:)APPS
echo.
echo. 
echo.  [4]   Defragment (D:)APPS
echo.
echo.
echo.  [5]   Defragment (E:)DATABASE
echo.
echo.
echo.  [6]   Defragment (F:)WORK AREA
echo.
echo.
echo.  [7]   Defragment (G:)DATABASE BACKUP
echo.
echo.
echo.
echo.
set /p userinp= Enter [NUMBER]:
if [%userinp%]==[] echo.&echo Invalid User Input&echo.&pause&goto :menu
if %userinp%==1 goto :opt1
if %userinp%==2 goto :opt2
if %userinp%==3 goto :opt3
if %userinp%==4 goto :opt4
if %userinp%==5 goto :opt5
if %userinp%==6 goto :opt6
if %userinp%==7 goto :opt7
goto :eof
echo.
echo.

:opt1
defrag c: /l /h /u
goto :choice

:opt2
defrag c: /h /u
goto :choice

:opt3
defrag d: /l /h /u
goto :choice

:opt4
defrag d: /h /u
goto :choice

:opt5
defrag e: /o /h /u
goto :choice

:opt6
defrag f: /o /h /u
goto :choice

:opt7
defrag g: /o /h /u
goto :choice 

Скрипт Powershell

$host.ui.RawUI.WindowTitle = “Defragment and Optimize Drives”
function Show-Menu
{
     param (
     )
     Write-Host "SELECT TASK:"
     Write-host "`n"
     Write-Host "[1] Retrim C:\WINDOWS 10 {SSD}" 
     Write-host "`n"
     Write-Host "[2] Defrag C:\WINDOWS 10 {SSD}" 
     Write-host "`n"
     Write-Host "[3] Retrim D:\APPS {SSD}" 
     Write-host "`n"
     Write-Host "[4] Defrag D:\APPS {SSD}" 
     Write-host "`n"
     Write-Host "[5] Defrag E:\DATABASE {HDD}" 
     Write-host "`n" 
     Write-Host "[6] Defrag F:\WORK AREA {HDD}" 
     Write-host "`n"
     Write-Host "[7] Defrag G:\DATABASE BACKUP {HDD}" 
     Write-host "`n"
     Write-Host "[8] Exit " 
     Write-host "`n"
}

do
{
     Show-Menu
     $input = Read-Host "Enter [NUMBER]"
     switch ($input)
     {
           '1' {
                cls
                Optimize-Volume C -Retrim -NormalPriority
           } '2' {
                cls
                Optimize-Volume C -Defrag -NormalPriority
           } '3' {
                cls
                Optimize-Volume D -Retrim -NormalPriority
           } '4' {
                cls
                Optimize-Volume D -Defrag -NormalPriority
           } '5' {
                cls
                Optimize-Volume E -Defrag -NormalPriority
           } '6' {
                cls
                Optimize-Volume F -Defrag -NormalPriority
           } '7' {
                cls
                Optimize-Volume G -Defrag -NormalPriority
           } '8' {
                cls
                exit

           }
     }
     pause
}
until ($input -eq 'exit')

0 ответов

Другие вопросы по тегам