See also: Best Free SFTP Servers
SFTP offers a secure connection to transfer files between computers with encryption. Although many people assume the acronym stands for Secure File Transfer Protocol, it is actually the SSH File Transfer Protocol.
SFTP is a variation of the File Transfer Protocol (FTP), which is one of the oldest internet applications. Both SFTP and FTP are standard definitions, not programs. It is up to others to write an SFTP program, but they must follow the SFTP standard in order to make it compatible with other SFTP programs.
In a standard implementation, an SFTP program runs at the command-line interface. The utility has its own environment. So when you enter an SFTP session, you should see the command line prompt change to sftp>.
Once logged into an SFTP session, normal commands for the operating system won’t work. Instead, you must use the command language specified in the SFTP standard.
Most frequently used SFTP commands
Some most commonly used SFTP commands include:
|?||List of all commands or explain a command, eg ? get|
|!||Leave the environment temporarily *|
|cd||Change the active directory path on the remote host|
|chmod||Change the permissions of files on the remote host|
|chown||Change the owner of files on the remote host|
|dir||List the contents of the current directory on the remote host|
|exit||Close the connection and leave SFTP|
|get||Copy a file from the remote host to the local computer|
|help||Same as ?|
|lcd||Change the active directory on the local system|
|lls||List the contents of the current directory on the local computer|
|lmkdir||Create a directory on the local computer|
|ln||Create a symbolic link for a file on the remote host|
|lpwd||Show the present working directory on the local computer|
|ls||Same as dir|
|lumask||Change the local umask value|
|mkdir||Create a directory on the remote host|
|put||Copy a file from the local computer to the remote host|
|pwd||Show the present working directory path on the remote host|
|quit||Same as exit|
|rename||Rename a file on the remote host|
|rm||Delete a file on the remote host|
|rmdir||Remove an empty directory on the remote host|
|symlink||Same as ln|
|version||Show the SFTP version|
* to return to SFTP type exit. Execute commands in the underlying operating system without leaving SFTP by putting ! in front of the command, eg !date
Not every computer will have an SFTP program, but just about all computers do have FTP. For example, FTP is bundled into all Microsoft operating systems, but SFTP isn’t. There are also GUI versions of SFTP available and they take care of all of the available commands for you through interpretive buttons and menu options. Whether you prefer a GUI SFTP implementation or you want to use the system at the command line, you will need to find and install an SFTP utility.
Do you have a favorite SFTP program that you use a lot? Leave a message in the comments section below and let us all know about it.
View or Download the Cheat Sheet JPG image
Right-click on the image below to save the JPG file (759 width x 860 height in pixels), or click here to open it in a new browser tab. Once the image opens in a new window, you may need to click on the image to zoom in and view the full-sized jpeg.
View or Download the cheat sheet PDF file
Download the cheat sheet PDF file here. When it opens in a new browser tab, simply right click on the PDF and navigate to the download menu.
SFTP Commands FAQs
⭐What is needed for SFTP?
An SFTP connection requires appropriate software, so you will need an SFTP server utility on one of the two devices in communication and a client at the other end. Most SFTP utilities provide both functions.
⭐Why doesn't the CHMOD command work on all FTP or SFTP servers?
The developer of an FTP server utility can create the service in any way, but the software will only be able to work universally interacting with other devices that don’t need to have the same software installed on it, if the developer follows the common FTP standards. All FTP utilities will include all of the commands stipulated in the relevant RFCs and then will possibly also have extra functionality. CHMOD is not specified in the FTP standards and therefore, it is an optional extra that some developers program into their software. It doesn’t have to be included in every implementation.
⭐How do you grep via SFTP?
The grep shell command isn’t built into the standard SFTP environment, so in order to use grep on a remote file, you will need to transfer the file to the local computer with SFTP and then perform a grep.