1

I want to diff two files in the same directory in a bash script. To get the full paths of these two files (I need this because the script isn't running the same directory), I did:

pathToOld=$(ls -Art /dir/path/here | grep somestring | tail -n2 | head -n1)
pathToOld="/dir/path/here/${pathToOld}"

and

pathToNew=$(ls -Art /dir/path/here | grep somestring | tail -n 1)
pathToNew="/dir/path/here/${pathToNew}"

I was able to figure out the above from the following links: link1, link2, link3

If I echo these path in the .sh script, it comes out correctly, like:

>echo "${pathToOld}"
/dir/path/here/oldFile

But when I try to diff the files like so:

diff pathToOld pathToNew

It tells me:

diff: pathToOld: No such file or directory
diff: pathToNew: No such file or directory

How do I make this work? Btw, I have also tried to pipe sed -z 's/\n/ /g' (inspired by this) to both lines but that hasn't helped.

0stone0
  • 34,288
  • 4
  • 39
  • 64
arpanet101
  • 183
  • 1
  • 11

0 Answers0