Extract file contents into array using Bash

arrays, bash

Solution

You can use a loop to read each line of your file and put it into the array

# Read the file in parameter and fill the array named "array"
getArray() {
    array=() # Create array
    while IFS= read -r line # Read a line
    do
        array+=("$line") # Append line to the array
    done < "$1"
}

getArray "file.txt"

How to use your array :

# Print the file (print each element of the array)
getArray "file.txt"
for e in "${array[@]}"
do
    echo "$e"
done

Problem

How to extract a file content into array in Bash line by line. Each line is set to an element. I've tried this: ``` declare -a array=(`cat "file name"`) ``` but it didn't work, it extracts the whole lines into `[0]` index element

Original source

Related problems