I have a file (say called list.txt) that contains relative paths to files, one path per line, i.e. something like this:
list.txt
foo/bar/file1 foo/bar/ba
Use basename and dirname, that's all you need.
basename
dirname
part1=`dirname "$p"` part2=`basename "$p"`