Copy and append files to a remote machine: cat err

2019-04-14 15:24发布

So, I have a bit of a problem:

Originally I was using scp to copy a file from a local machine to a remote machine before I realized that scp overwrites instead of appends. But I need it to append. So I did some Googling and this alternative using cat and ssh popped up instead:

cat localfile | ssh user@remoteserver "cat >> remotefile"

Problem is, I get this interesting error whenever I use that method:

bash: cat: command not found

When I normally ssh into my remote machine, I can cat just fine, so I'm looking for either help fixing this problem or finding a way to append using only commands from my local host.

标签: ssh append scp cat
1条回答
We Are One
2楼-- · 2019-04-14 16:06

Your $PATH may be different when running through ssh.

Anyway, you can run which cat to find where cat is actually placed on the remote machine and hard code the path in the command invocation. For instance

ssh user@remoteserver "/sbin/cat >>remotefile" <localfile

(BTW, you don't really need the local cat).

Another option would be to use a SFTP client with support for appending.

查看更多
登录 后发表回答