I have a file that contains a list of file names to be opened later. After I load lines (file names) to variables, for a reason unknown to me I cannot open it as a file later.
Here is a simplified example of what i'm trying to do:
Main file's contents:
first_file.txt
second_file.txt
Bash commands:
read line < $main_file   # file with the list, received as an argument
echo $line               # to check that correct filename has been read
cat $line                # attempt to dump "first_file.txt" contents <- FAILS
cat first_file.txt       # read "first_file.txt" contents manually 
Execution esult:
first_file.txt
: No such file or directory
*** this is 1st file's contents ***
*** ....
So, cat first_file.txt works, $line contains "first_file.txt", but cat $line fails...
I obviously misunderstand something here, suggestions are welcomed!
Edit: 
As requested, here is cat -v $main_file's output:
first_file.txt^M
second_file.txt^M
third_file.txt^M
^M
^M
 
    