You may transfer files between your workstation and the cluster on the command line using the scp command. This command behaves much like the basic Linux cp command, except you may use a remote address as the source or destination file. The syntax is as follows:
scp source_file destination_file
The following command will copy the file testfile from the /home/wsuNID/ directory on the remote server kamiak.wsu.edu to your workstation’s local directory “.” (a period represents the current working directory).
user@localhost> scp email@example.com:/home/remoteuser/testfile .
To copy a directory along with all its contents you will need to add the -r recursive flag. The following command will copy the simdata directory and all its contents to your local machine.
user@localhost> scp -r firstname.lastname@example.org:/home/remoteuser/simdata .
A powerful alternative to scp is rsync. Full documentation can be found by running man rsync. An example of a recursive copy (like the `scp -r …` above) is:
user@localhost> rsync -Pah email@example.com:/home/remoteuser/simdata .
It is important to note that a trailing slash, or lack thereof, changes rsync’s behavior. If the source directory is written with a trailing slash (firstname.lastname@example.org:/home/remoteuser/simdata/) then rsync will transfer the contents of that directory to the destination. Without a trailing slash rsync will transfer the directory itself and its contents.
There are many graphical file transfer solutions available. The following are the three most popular and are fairly intuitive. Regardless of your choice of software, you must connect to the cluster using the Secure File Transfer Protocol (SFTP).