This has to be simple and I'm just missing it.

If I pull a filename from a temp file into a variable, I can *ls* it fine.

If I cut off the extension, and tack on my own SAME EXT, *ls* no longer works.

(The actual script is more elaborate, loading *vlc* , etc -- but this summarizes & shows my issue)


# mp4file.txt holds just '*long file with spaces.mp4'*

*
*

fname=$(<mp4file.txt)

# echo $fname shows the right filename.mp4 string

# works
ls -al "$fname"


# Cut off the extension.
fname=`echo $fname | rev | cut -d. -f2 | rev`

# echo $fname shows the filename sans '.mp4'


# THIS LS FAILS, WITH FILE NOT FOUND (but actually reports the exact string that worked above, but not being found here).

*ls -al "$fname".mp4**
*

*ls: cannot access 'long file with spaces.mp4': No such file or directory
*

------------------------------------------------------


It is not:

* a special character thing,

* a carriage return thing,

* a character case thing,

* not helped with './' or '~/' added in front of the filename.

* It's the same string in both spots.


Any thoughts folks?

Thanks





Reply via email to