Chuyên mục

Blogger
  • Blogger Template 8
    • Seo Blogspot 29
      • Thiết kế Blogspot 26
        • Thủ thuật Blogspot 79
          • Tiện ích Blogspot 31
            Máy tính
            • Phần mềm 45
              • Sửa lỗi Windows 20
                • Thủ thuật Windows 78
                  • Cài đặt Windows 43

                    Khởi chạy tệp powershell script bằng lệnh command hoặc từ tệp bactch

                    Khi bạn viết một tệp PowerShell Script (.ps1) bạn khởi chạy tệp bằng cách chuột phải chọn run width PowerShell và bạn cũng có thể chạy được tệp bằng lệnh command trong cmd hoặc viết tệp batch (.bat). Có một số tập lệnh thực thi bắt buộc phải sử dụng đến poweshell như gỡ bỏ ứng dụng, tắt tính năng..., bạn có thể kết hợp viết lệnh command trong tệp batch khởi chạy tệp script

                    Các tệp powershell script nên được lưu vào một thư mục cố định chẳng hạn tạo mới một thư mục tên data trong thư mục data lại tạo mới thư mục scripts và lưu các tệp script vào thư mục này


                    Khi muốn chạy một tệp script sử dụng dòng lệnh command sau trong cmd

                    Copy

                    powershell.exe -ExecutionPolicy Bypass -Command "& 'C:\data\scripts\Start-Service.ps1'"


                    Trong đó C:\data\scripts\Get-AppxPackage.ps1 là đường dẫn đến tệp Get-AppxPackage.ps1 đang lưu tệp Start-Service.ps1 trong thư mục scripts của thư mục data, thư mục data bạn có thể lưu vào ổ đĩa (C) chẳng hạn

                    Hình minh họa


                    Trong trường hợp nếu muốn chạy nhiều tệp script với các menu tùy chọn các bạn có thể viết tệp batch thêm menu với các tùy chọn khởi chạy script

                    Tham khảo thêm: Cách sử dụng tùy chọn choice command và set command trong viết tệp batch

                    Mình lấy ví dụ mình sẽ viết nội dung tệp batch như sau:

                    Copy

                    @echo off

                    title Run PowerShell Script (.ps1)

                    :menu

                    cls

                    echo.Main menu

                    echo.

                    echo. ID Option

                    echo.

                    echo. 1 Get-AppxPackage

                    echo. 2 Remove-AppxPackage

                    echo. 3 Add-AppxPackage

                    echo. 4 Get-AppxProvisionedPackage

                    echo. 5 Remove-AppxProvisionedPackage

                    echo. 6 Enable Windows Features

                    echo. 7 Disable Windows Features

                    echo. 8 Start Service

                    echo. 9 Stop Service

                    echo.

                    choice /c:123456789 /n /m "Select ID for continue : "

                    if %errorlevel% EQU 1 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Get-AppxPackage.ps1'" && goto menu

                    if %errorlevel% EQU 2 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Remove-AppxPackage.ps1'" && goto menu

                    if %errorlevel% EQU 3 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Add-AppxPackage.ps1'" && goto menu

                    if %errorlevel% EQU 4 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Get-AppxProvisionedPackage.ps1'" && goto menu

                    if %errorlevel% EQU 5 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Remove-AppxProvisionedPackage.ps1'" && goto menu

                    if %errorlevel% EQU 6 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Enable-WindowsOptionalFeature.ps1'" && goto menu

                    if %errorlevel% EQU 7 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Disable-WindowsOptionalFeature.ps1'" && goto menu

                    if %errorlevel% EQU 8 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Start-Service.ps1'" && goto menu

                    if %errorlevel% EQU 9 powershell.exe -ExecutionPolicy Bypass -Command "& '%~dp0data\scripts\Stop-Service.ps1'" && goto menu


                    Sau đó mình lưu tệp batch này cùng với thư mục data


                    Chạy tệp batch trong đó có các tùy chọn chạy powershell script


                    Các bạn lưu ý khi viết tệp batch thì %~dp0 là đường dẫn bất kỳ đến thư mục đang lưu tệp batch chẳng hạn thư mục Tuan đang lưu tệp batch và thư mục data, các bạn có thể lưu thư mục Tuan này ở bất kỳ đâu và khi chạy tệp batch tự tìm đến đường dẫn chính xác đến thư mục đó
                    Nội dung chính
                      Bài đăng mới hơn Bài đăng cũ hơn