# Perform Bluetooth FTP client functions

Source: [https://docs.qualcomm.com/doc/80-70015-13/topic/bluez-perform-bluetooth-ftp-server-and-client-functions.html](https://docs.qualcomm.com/doc/80-70015-13/topic/bluez-perform-bluetooth-ftp-server-and-client-functions.html)

You can verify Bluetooth FTP client functionality using the commands provided in the
        main menu of obexctl.

Note: To test or verify FTP server
                functions, a test application is not required. FTP functions are performed through
                the client connection.

Before you begin, set up the device as described in [Set up device for Bluetooth FTP functions](https://docs.qualcomm.com/doc/80-70015-13/topic/bluez-ftp.html#bluez-ftp__section_bdh_4fl_rcc_navyanka_09-11-24-025-48-587).

## Create a folder

To create a folder on the remote device, run the following command from the
                    `obexctl`
                menu:

    mkdir <folder_name>Copy to clipboard

You can verify folder creation on the server at the
                    /var/bluetooth directory.

**Parameters**

`<folder_name>` is the new folder name.

**Example**

To create a folder called new\_dir, run the following
                command:

    mkdir new_dirCopy to clipboard

**Sample output**

#mkdir new_dir
    Attempting to CreateFolder
    CreateFolder successfulCopy to clipboard

## Change the current folder

To change the current folder of the remote device, run the following command from the
                    `obexctl`
                menu:

    cd <folder_path>Copy to clipboard

**Parameters**

`<folder_path>` is the folder that you intend to switch to.

**Example**

To change the current folder to new\_dir, run the following
                command:

    cd new_dirCopy to clipboard

**Sample output**

#cd new_dir
    Attempting to ChangeFolder to new_dir
    ChangeFolder successfulCopy to clipboard

## Get current folder information

To get information about the current folder, run the following command from the
                    `obexctl`
                menu:

    ls .Copy to clipboard

**Sample output**

# ls .
    Attempting to ListFolder
    [NEW] Transfer /org/bluez/obex/client/session7/transfer4
    [CHG] Transfer /org/bluez/obex/client/session7/transfer4 Size: 611
    [CHG] Transfer /org/bluez/obex/client/session7/transfer4 Status: complete
          Type: folder
           Name: amisha_dummy
           User-perm: RWD
           Group-perm: R
           Other-perm:
           Accessed: 20231214T123503Z
           Modified: 20231214T123502Z
           Created: 20231214T123502Z
           Type: folder
           Name: new_dir
           User-perm: RWD
           Group-perm: R
           Other-perm:
           Accessed: 20231215T093311Z
           Modified: 20231215T093245Z
           Created: 20231215T093245ZCopy to clipboard

## Copy a file to a remote device

To copy a local file to the remote device, run the following command from the
                    `obexctl` menu:

    cp :<source_file> <destination_file>Copy to clipboard

**Parameters**

- `<source_file>` is the local file.
- `<destination_file>` is the target file on the remote
                    device.

**Example**

To copy a local file at Documents/ftp\_client.txt to the
                    ftp\_client.txt on the remote device, run the following
                command:

    cp :Documents/ftp_client.txt ftp_client.txtCopy to clipboard

**Sample output**

# cp :Documents/ftp_client.txt ftp_client.txt
    Attempting to PutFile
    [NEW] Transfer /org/bluez/obex/client/session7/transfer5
    Transfer /org/bluez/obex/client/session7/transfer5
          Status: queued
           Name: ftp_client.txt
           Size: 10
           Filename: Documents/ftp_client.txt
           Session: /org/bluez/obex/client/session7
    [CHG] Transfer /org/bluez/obex/client/session7/transfer5 Status: complete
    [DEL] Transfer /org/bluez/obex/client/session7/transfer5Copy to clipboard

## Copy a file from a remote device

Before you begin, [change the current folder](https://docs.qualcomm.com/doc/80-70015-13/topic/bluez-perform-bluetooth-ftp-server-and-client-functions.html#bluez-perform-bluetooth-ftp-server-and-client-functions__section_h1b_y3l_rcc_navyanka_09-11-24-051-31-148) to the folder of the intended file.

To copy a file from the remote device to a local directory, run the following command
                from the `obexctl`
                menu:

    cp <destination_file> :<source_file>Copy to clipboard

**Parameters**

- `<source_file>` is the file on the remote device.
- `<destination_file>` is the target file on the local
                    device.

**Example**

To copy ftp\_client\_2.txt file from the remote device to the
                local device, run the following command:

    cp ftp_client_2.txt :ftp_client_2.txtCopy to clipboard

**Sample output**

# cp ftp_client_2.txt :ftp_client_2.txt
    Attempting to GetFile
    [NEW] Transfer /org/bluez/obex/client/session7/transfer21
    Transfer /org/bluez/obex/client/session7/transfer21
           Status: queued
           Name: ftp_client_2.txt
           Size: 0
           Filename: ftp_client_2.txt
           Session: /org/bluez/obex/client/session7
    [CHG] Transfer /org/bluez/obex/client/session7/transfer21 Size: 13
    [CHG] Transfer /org/bluez/obex/client/session7/transfer21 Status: complete
    [DEL] Transfer /org/bluez/obex/client/session7/transfer21Copy to clipboard

## Copy a file in a remote device

To copy a file from a directory to another directory on the remote device, run the
                following command from the `obexctl`
                menu:

    cp <source_file> <destination_file>Copy to clipboard

**Parameters**

- `<source_file>` is the file to be copied.
- `<destination_file>` is the target location.

**Example**

To copy ftp\_client.txt to /new\_dir\_2/, run
                the following
                command:

    cp ftp_client.txt ../new_dir_2/ftp_client.txtCopy to clipboard

**Sample output**

# cp ftp_client.txt ../new_dir_2/ftp_client.txt
    Attempting to CopyFile
    CopyFile successfulCopy to clipboard

## Move a file

To move a file from one folder to another on the remote device, run the following
                command from the `obexctl` menu:

    mv <source_file> <destination_file>Copy to clipboard

**Parameters**

- `<source_file>` is the file to be moved.
- `<destination_file>` is the target location.

**Example**

To move ftp\_client\_2.txt file to
                    /new\_dir\_2/, run the following
                command:

    mv ftp_client_2.txt ../new_dir_2/ftp_client_2.txtCopy to clipboard

**Sample output**

#mv ftp_client_2.txt ../new_dir_2/ftp_client_2.txt
    Attempting to MoveFile
    MoveFile successfulCopy to clipboard

## Delete a file

To delete a file, run the following command from the `obexctl`
                menu:

    rm <filename>Copy to clipboard

**Parameters**

`<filename>` is the file to be deleted.

**Example**

To delete `ftp_client.txt` file, run the following command:

    rm ftp_client.txtCopy to clipboard

**Sample output**

# rm ftp_client.txt
    Attempting to Delete
    Delete successfulCopy to clipboard

**Parent Topic:** [File Transfer Protocol](https://docs.qualcomm.com/doc/80-70015-13/topic/bluez-ftp.html)

Last Published: Oct 14, 2024

[Previous Topic
File Transfer Protocol](https://docs.qualcomm.com/bundle/publicresource/80-70015-13/topics/bluez-ftp.md) [Next Topic
Phone Book Access Profile](https://docs.qualcomm.com/bundle/publicresource/80-70015-13/topics/bluez-pbap.md)