I need to transfer a text file to a remote PC (freeSSH) using SFTP and SSH from a Mac host. These two are connected in a local network.
So is there a way to run an SFTP command (with the username and password provided) from inside the Bash script?
I already tried some scripting with expect
, but I didn't get any results.
I found a similar post, How to run the sftp command with a password from a Bash script, but it is for Linux. I have a Mac.
Although @anubhava's answer is correct, it points to the sources only and compiling it without help is hard.
To install
sshpass
on MacOS usingbrew
easily please use this unofficial package:Source: https://gist.github.com/arunoda/7790979
lftp
is great for scripting ftp (and sftp, ftps). And you can install it with brew:You can download and install sshpass on Mac as well. Get the latest version source from this download link
Rest of the steps on using sshpass are there in the linked answer of mine.