cannot copy local files to remote computer thru ssh

I am getting trouble copying local files to remote files on a linux machine.  I am using scp in ssh to copy files but local files doesnt seems found although they are there.

logged in by ssh
pwd : blahblah

I want to copy all htlocations.txt from my local machine to remote machine
scp    htlocations.txt
===   ===========   ==================================================

But I keep getting the error that htlocations.txt is not found, I have tried by changing it to export/users/user1/htlocations.txt  and also copied the htlocations.txt at export/users/user1 folder in my local mac

Even when I switch the source and target like copy remote files to local machine that doesnt work either, it keep saying that
scp*.txt Users/user1/Dev/
It keep complaining that Users/user1/Dev : No such file or directory

Could someone please help. I heard that scp is really easy to use, not sure why it is not working for me.   I am accessting a remote VM thru my mac.
Who is Participating?

Improve company productivity with a Business Account.Sign Up

Daniel McAllisterConnect With a Mentor President, IT4SOHO, LLCCommented:
I have to agree with dlethe... my first suspicion is that there is a permissions or hidden character issue going on here...

My own preferred way to address that kind of thing is that I rely heavily on bash's tab-completion feature:

Try typing "scp htloc[tab]" and see what happens...

Assuming you're not "root" in typing the scp command, you might also want to look into whether you have the appropriate read permission on the source file -- and execute permission on the source file's directory.

If you are root (shame on you! <grin>), and the file still appears to be unreadable by scp (but works with the likes of cp), look at the executable file itself for scp (ls -l `which scp`) -- it may be running as suid or there may be something else "funky" going on there...

scp really is a VERY simple command -- and since your error message has to do with reading the source, it's not time (yet) to go digging into the target machine... error messages are usually correct from the perspective of the program throwing the error message at that point in its processing....

I hope this helps...

Do you mean /export/users/user1/htlocations.txt ? or /Users/user1/Dev/ ?
ysgdelAuthor Commented:
Neither of these. I tried my files putting at Users/user1/Dev/htlocations.txt  or in directly my home directory Users/user1  or also put the file in /export/users/user1... but scp doesnt find files anywhere. Instead it seems look files on remote computer so technically if I say copy *.txt files to remote computer... it copy the *.txt from remote computer itself to remote computer. But I wanted files to be picked up from my local computer and then copy to remote computer.   How do I copy local files?  Do I put files at a specific location in my local computer?
Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to and use offer code ‘EXPERTS’ to get 10% off your first purchase.

Unless you cd to /
is different from

 If path is not a full path name, it is interpreted relative to the login directory of the specified user ruser on rhost, or your current user name if no other remote user
     name is specified.
ysgdelAuthor Commented:
Ozo I know that when relative path applies. The same logic applies on copying files locally

The problem is with scp when I specify any file whether it is in current directory or in subdirectory, scp never finds it, it always say No such file.  I ssh right from my user's home and the files which are in user's home, those are not found. There has to be something to find that.  Like below : htlocations.txt is right in same directory but not found.

scp    htlocations.txt
Does scp say No such file if you give the full path name?
ysgdelAuthor Commented:
Yes  I tried both ways...
You may have hidden characters in the file name.  Remember, this is unix, so even a ctrl-h or delete key can be part of a file name.  

Try using wild-cards, or better yet, just do a simple test from command line and cp htlocations.txt  test1.txt

Then try to copy test1.txt

Also, since nobody mentioned permissions, why not just for grins chmod 666 the file and chown nobody:nobody and see if that helps.
Brian UtterbackPrinciple Software EngineerCommented:
Try running these two commands in the same directory you ran the scp command in:

ls -l htlocations.txt

ssh "ls -l /export/home/user1"
silly question, did you probably want to do it this direction?

no logged in by ssh to
scp    htlocations.txt
Duncan RoeSoftware DeveloperCommented:
Does the remote directory exist? Maybe scp is complaining about that, rather than the local file. What is the exact error message it prints?
Try to do
cp htlocations.txt /dev/null
And see if there any error.
Than connect to server and check is there folder you trying to copy to
ls -ld /export/home/user1
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.