Command Line SFTP Examples

Command-Line SFTP Examples

Many operating systems come with a built in sftp command that can be used to connect and perform operations via SFTP.

To connect and authenticate

To connect to SmartFile, specify your username and the fully qualified domain name (FQDN) of your SmartFile site, separated by an @ character:

sftp username@MYCOMPANY.smartfile.com

When prompted, enter your password.

To connect and authenticate using a SSH/SFTP Key

Save the SSH/SFTP Key to a file on your computer. For example, my_ssh_key.key

Make sure that the key file has restricted access permissions, so that only your user ID can access the file. Remove the access permissions for Groups and Everyone, leaving only read permission for yourself.

Connect to SmartFile, specifying the Key file by using the -i (identity file) flag.

For Mac/Linux:

sftp -i /path/to/my_ssh_key.key username@MYCOMPANY.smartfile.com

For Windows:

sftp -i C:\path\to\my_ssh_key.key username@MYCOMPANY.smartfile.com

To upload files

Upload a single file using the put command:

put file.ext

Upload multiple files using the mput (multiple put) command:

mput file1.ext file2.ext file3.ext

Or you can use a wildcard to match and upload multiple file names:

mput file*.ext

To upload a folder

Create the destination folder using the mkdir (make directory) command and make sure the folder name matches the name of the folder you’re trying to upload:

mkdir TheFolderName

Then upload the folder contents using the put -r (put recursively) command:

put -r TheFolderName/

To download files

Download a single file using the get command:

get file.ext

Download multiple files using the mget (multiple get) command:

mget file1.ext file2.ext file3.ext

Or you can use a wildcard to match and download multiple file names:

mget file*.ext

To download a folder

Create the local destination folder using the lmkdir (locally make directory) command and make sure the folder name matches the name of the folder you’re trying to download:

lmkdir TheFolderName

Set your local permissions using the lumask (locally set the mask for user permissions) command:

lumask 002

Download the folder contents using the get -r (get recursively) command:

get -r TheFolderName/

Using the lumask command to set the UMASK to 002 will set the correct permissions for all the files to download successfully. If you miss this step then you might see permission errors, where subfolders will be created but the files contained within them will fail to download.

Last updated

©2023 Orange Platform LLC dba SmartFile. All rights reserved.