YouTube Icon

Code Playground.

How to Use SFTP Command to Transfer Files


How to Use SFTP Command to Transfer Files

SFTP (SSH File Transfer Protocol) is a protected document convention that is utilized to get to, oversee, and move records over an encoded SSH transport. 

When contrasted and the customary FTP convention, SFTP offers all the usefulness of FTP, however it is safer and simpler to design. 

In contrast to SCP , which bolsters just record moves, the SFTP permits you to play out a scope of procedure on far off documents and resume record moves. 

In this instructional exercise, we will tell you the best way to utilize the Linux sftp order. 

Before you Begin

To have the option to move records through SFTP you should have compose authorization on the distant framework. 

While moving enormous records, it is prescribed to run the sftp order inside a screen or tmux meeting. 

The catalog from where you run the sftp order is the nearby working index. 

Try not to mistake SFTP for FTPS. Both convention fill a similar need. Nonetheless, FTPS represents FTP Secure, and it is an augmentation to the standard FTP convention with help for TLS. 

Establishing an SFTP connection

SFTP deals with a customer worker model. It is a subsystem of SSH and supports all SSH verification systems. 

To open a SFTP association with a far off framework, utilize the sftp order followed by the far off worker username and the IP address or space name: 

sftp remote_username@server_ip_or_hostname

On the off chance that you are associating with the host utilizing secret word verification, you will be provoked to enter the client secret word. 

When associated, you will be given the sftp brief, and you can begin communicating with the distant worker: 

Connected to remote_username@server_ip_or_hostname.

In the event that the distant SSH worker isn't tuning in on the default port 22 , utilize the - P alternative to indicate the SFTP port: 

sftp -P custom_port remote_username@server_ip_or_hostname

SFTP Commands

The greater part of the SFTP orders are comparable or indistinguishable from the Linux shell orders. 

To get a rundown of all accessible SFTP orders, type help, or ?. 


This will yield an extensive rundown of every accessible order, including a short portrayal of each order: 

Available commands:
bye                                Quit sftp
cd path                            Change remote directory to 'path'
version                            Show SFTP version
!command                           Execute 'command' in local shell
!                                  Escape to local shell
?                                  Synonym for help

Navigating with SFTP

At the point when you are signed in to the far off worker, your present working registry is the far off client home index. You can watch that by composing: 

Remote working directory: /home/remote_username

To list the records and registries, utilize the ls order: 


To explore to another index, utilize the album order. For instance, to change to the/tmp registry you would type: 

cd /tmp

The above orders are utilized to explore, and deal with the far off area. 

The SFTP shell likewise gives orders to nearby route, data and document the executives. The neighborhood orders are prefixed with the letter l. 

For instance, to print the neighborhood working catalog, you would type: 

cd lpwd
Local working directory: /home/local_username

Transferring Files with SFTP

SFTP permits you to move documents between two machines safely. 

In the event that you are chipping away at a work area machine, you can utilize a GUI SFTP customer like WinSCP or FileZilla to interface with the far off worker and download or transfer documents. 

The sftp order is helpful when you take a shot at a worker without GUI, and you need to move documents or perform different procedure on the far off records. 

Downloading Files with the SFTP Command

To download a solitary document from the distant worker, utilize the get order: 


The yield should look something like this: 

Fetching /home/remote_username/ to
/home/remote_username/                           100%   24MB   1.8MB/s   00:13

When downloading records with sftp, the documents are downloaded to the index from which you composed the sftp order. 

On the off chance that you need to spare the downloaded document with an alternate name, indicate the new name as the subsequent contention: 


To download an index from the far off framework, utilize the recursive - r alternative: 

get -r remote_directory

In the event that a record move comes up short or is intruded on, you can continue it utilizing the reget order. 

The punctuation of reget is equivalent to the sentence structure of get: 

Uploading Files with the SFTP Command

To transfer a document from the nearby machine to the far off SFTP worker, utilize the put order: 


The yield should look something like this: 

Uploading to /home/remote_username/                          100%   12MB   1.7MB/s   00:06

In the event that the document you need to transfer isn't situated in your present working catalog, utilize the supreme way to the record. 

When working with put you can utilize the very alternatives that are accessible with the get order. 

To transfer a nearby index, you would type: 

put -r locale_directory

To continue an intruded on transfer: 


File Manipulations with SFTP

Normally, to perform assignments on a distant worker, you would interface with it by means of SSH and accomplish your work utilizing the shell terminal. Be that as it may, in certain circumstances, the client may have just SFTP admittance to the far off worker. 

SFTP permits you to play out some essential record control orders. The following are a few instances of how to utilize the SFTP shell: 

Get data about the far off framework's plate utilization : 

        Size         Used        Avail       (root)    %Capacity
    20616252      1548776     18002580     19067476           7%

Make another catalog on the distant worker: 

mkdir directory_name

Rename a record on the distant worker: 

rename file_name new_file_name

Erase a record on the distant worker: 

rm file_name

Erase a catalog on the distant worker: 

rmdir directory_name

Change the consents of a record on the distant framework: 

chmod 644 file_name

Change the proprietor of a document on the far off framework: 

chown user_id file_name

You should gracefully the client ID to the chown and chgrp orders. 

Change the gathering proprietor of a far off record with: 

chgrp group_id file_name

Whenever you are finished with your work, close the association by composing bye or quit. 


In this instructional exercise, we have told you the best way to utilize the sftp order to download and transfer documents to your far off SFTP worker. 

You may likewise need to set up a SSH key-based verification and associate with your Linux workers without entering a secret phrase. On the off chance that you are routinely associating with similar frameworks, you can rearrange your work process by characterizing the entirety of your associations in the SSH config document . 

Don't hesitate to leave a remark on the off chance that you have any inquiries or criticism.