arraysbashshell

Loop through an array of strings in Bash?


I want to write a script that loops through 15 strings (array possibly?) Is that possible?

Something like:

for databaseName in listOfNames
then
  # Do something
end

Solution

  • You can use it like this:

    ## declare an array variable
    declare -a arr=("element1" "element2" "element3")
    
    ## now loop through the above array
    for i in "${arr[@]}"
    do
       echo "$i"
       # or do whatever with individual element of the array
    done
    
    # You can access them using echo "${arr[0]}", "${arr[1]}" also
    

    Also works for multi-line array declaration

    declare -a arr=("element1" 
                    "element2" "element3"
                    "element4"
                    )