In the evolving technological landscape, navigating different operating systems and their unique functionalities is an essential skill. A prominent instance is the requirement to run .sh or shell script files on Windows 10. The demand to handle such tasks typically arises for developers, system administrators, or tech enthusiasts who work across different platforms or those who frequently interact with Unix-based environments such as Linux. 

Unlike Unix-based systems, Windows does not inherently offer support for these .sh files. Despite this, there are efficient methods to bridge this gap and run shell scripts successfully on Windows 10. 

This article serves as a comprehensive guide to understanding and implementing these methods, simplifying the otherwise daunting task. We shall guide you through a sequence of procedures and tools that enable you to run .sh files, bridging the gap between Windows and Unix-based systems.

So, let’s dive in, simplify the technicalities, and take one step further in mastering cross-platform operations.

What are Shell Scripts?

Shell scripts, denoted by the .sh extension, are a series of commands written in plain text file format. They’re essentially a batch job that instructs the system on what tasks to perform. You might be asking, “Why do we use them?” Let’s discuss this next.

Role and Importance of Shell Scripts

Shell scripts automate repetitive tasks, thereby diminishing the chances of errors and conserving precious time. They play an integral role in software development and system administration. Intrigued? Let’s delve into the basics of running a shell script.

Method 1: Using Windows Subsystem for Linux (WSL)

The Windows Subsystem for Linux (WSL) is an environment within Windows 10 that allows running native Linux command-line tools directly on Windows without requiring dual-boot or virtualization. It serves as a compatibility layer for running Linux binaries natively on Windows 10 and hence, is a powerful tool for executing shell scripts.

To install WSL, follow these steps:

  1. Enable the WSL feature: Open the “Turn Windows features on or off” dialog box, which you can access via the Control Panel or by typing the phrase into the Windows search bar. 

In this dialog, scroll down and check the option titled “Windows Subsystem for Linux.” Once you click “OK,” Windows will prompt you to restart your computer in order to implement the changes.

  1. Download a Linux distribution: Once you’ve enabled WSL and rebooted your system, the next step is to download a Linux distribution from the Microsoft Store. Some of the popular distributions include Ubuntu, Debian, and openSUSE. Once the download and installation process has concluded, you will find yourself equipped with a fully operational Linux environment integrated within your Windows system.

After successfully installing WSL and a Linux distribution, you can run shell scripts as follows:

  1. Open the WSL: Start by launching the WSL. You can do this by typing the name of your installed Linux distribution into the Windows search bar and pressing Enter.
  2. Navigate to the script’s directory: In the Linux command line, navigate to the directory containing your shell script file using the ‘cd’ (Change Directory) command. As an illustration, if your script resides in the Documents directory, you should input ‘cd Documents’ and then hit the Enter key.
  3. Execute the script: Finally, you can run your shell script by typing ‘sh’ followed by the name of your script. For instance, if your script is named ‘’, you would type ‘sh’ and press Enter.

Method 2: Using a GUI Method

Apart from the above method, you can also execute shell scripts in a graphical user interface (GUI) setting, particularly when using a Linux distribution or WSL with a desktop environment. This method provides a more intuitive way of running shell scripts for those who prefer graphical over command-line interfaces.

Here’s how to execute a shell script using this method:

  1. Access file properties: Start by right-clicking on the .sh file you want to run. Upon right-clicking and accessing the context menu, opt for the “Properties” choice. This will initiate the opening of a fresh window showcasing a range of attributes linked to the file.
  2. Navigate to permissions: Within the file properties window, you will encounter multiple tabs. Proceed to click on the tab marked as “Permissions.” This tab grants you the capability to adjust various permissions related to access and execution for the file.
  3. Modify execution permissions: Look for a checkbox labeled “Allow executing file as a program” under the “Execute” section. Check this box to grant your file the necessary permissions to run as a script.
  4. Apply changes: After making the necessary permission modifications, save the changes by selecting the “Apply” button. Following that, click on the “OK” button to close the properties window. At this point, your shell script possesses the required permissions for execution.
  5. Run the script: Finally, run the script by double-clicking on the .sh file. If the system prompts you to choose between “Run in Terminal,” “Display,” “Cancel,” or “Run,” select “Run in Terminal” for command-line scripts.

By following these steps, you can execute shell scripts using the GUI method. While this approach might not be suited for all scenarios, it does provide a more visual way of handling shell scripts, especially for users less comfortable with command-line interfaces.


Executing shell scripts in a Windows environment might initially seem like a complex task, given the fundamentally different architectures of Windows and Unix-like systems. However, with the right tools and methods at your disposal, you can run .sh or shell script files on Windows 10 effectively and efficiently. 

Throughout this guide, we’ve explored multiple ways to achieve this, ranging from using Git Bash, the powerful Windows Subsystem for Linux (WSL), to utilizing a graphical user interface.