How Do You Declare an Array in Batch Shell Scripting?


Heather Bennett

How Do You Declare an Array in Batch Shell Scripting?

Batch scripting is a powerful tool for automating tasks on Windows systems. One of the most useful features of batch scripting is the ability to work with arrays.

Arrays allow you to store multiple values and retrieve them later in your script. In this tutorial, we will explore how to declare an array in batch shell scripting.

Declaring an Array

To declare an array in batch shell scripting, you need to use the set command followed by the name of the array and its values. Here’s the syntax:

set array_name=value1 value2 value3 ..

The array_name is the name you choose for your array, and value1, value2, value3, and so on, are the values that you want to store in the array.

An Example:

@echo off
@echo off
@echo off
set fruits=apple banana orange
echo %fruits%

In this example, we declared an array called “fruits” and assigned three values to it: “apple”, “banana”, and “orange”. We then used the echo command to display all the values in the array.

Accessing Array Elements

To access individual elements of an array, you need to use the % symbol followed by the index of the element you want to retrieve. Batch scripting uses a zero-based indexing system, which means that the first element of an array has an index of 0, the second element has an index of 1, and so on.


@echo off
set fruits=apple banana orange
echo %fruits%
echo %fruits%[0]
echo %fruits%[1]
echo %fruits%[2]

In this example, we accessed individual elements of the “fruits” array using their respective indices. The output would be:

  • apple banana orange
  • apple
  • banana
  • orange

The Importance of Arrays in Batch Scripting

Arrays play a crucial role in batch scripting as they allow you to store and manipulate multiple values efficiently. They can be used for various purposes such as storing file names, command line arguments, or any other data that requires grouping.

By utilizing arrays in your batch scripts, you can simplify your code and make it more readable. Arrays enable you to perform operations on multiple values simultaneously, reducing the need for repetitive code.

An Example Use Case:

@echo off
set fruits=apple banana orange

for %%f in (%fruits%) do (
    echo Processing: %%f
    REM Perform operations on each fruit

In this example, we used a for loop to iterate over each element in the “fruits” array. We then performed a set of operations on each fruit individually. This approach allows you to write clean and concise code while working with multiple values.


Declaring arrays in batch shell scripting is a fundamental skill that can greatly enhance your ability to automate tasks on Windows systems. By utilizing arrays, you can efficiently store and manipulate multiple values, making your script more flexible and powerful.

In this tutorial, we covered the basics of declaring arrays in batch scripting, accessing individual elements, and discussed the importance of arrays in simplifying and optimizing your code.

Now that you have a solid understanding of how to declare an array in batch shell scripting, you can start incorporating this powerful feature into your own scripts. Happy coding!