| Crates.io | remote-files |
| lib.rs | remote-files |
| version | 0.1.2 |
| created_at | 2023-12-15 17:03:42.000463+00 |
| updated_at | 2024-10-17 15:40:31.256552+00 |
| description | a cli/lib wrapper of opendal to download/upload and manage remote files on buckets |
| homepage | |
| repository | https://github.com/amountainram/remote-files |
| max_upload_size | |
| id | 1071127 |
| size | 133,034 |
A command line and library wrapper of OpenDAL, which allows managing remote files on buckets, such as download and download them.
Currently supported buckets are:
Remote-files may work also with cloud storage providers that offer an API compatible with GCS or S3, but no guarantees are provided.
cargo install remote-files
In order to use remote-files it is necessary to generate a configuration file that
lists all the connection profiles, alongside their credentials details.
The location of this configuration file is governed through environment variable
RF_CFG_FILEPATH, whose default value depends on the operating system.
| OS | OS Configuration Folder | Example |
|---|---|---|
| Linux | $HOME/.config |
/home/alice/.config/rf/configuration.json |
| MacOS | $HOME/Library/Application Support |
/Users/Alice/Library/Application Support/rf/configuration.json |
| Windows | {FOLDERID_RoamingAppData} |
C:\Users\Alice\AppData\Roaming\rf\configuration.json |
Here is provided an example of configuration file that defines two different connection profiles, one for Google Cloud Storage and one for Amazon S3.
{
"my-gcs-bucket": {
"type": "gcs",
"configuration": {
"name": "my-gcs-bucket",
"credentialPath": "~/.config/gcloud/application_default_credentials.json"
}
},
"my-aws-bucket": {
"type": "s3",
"configuration": {
"name": "my-aws-bucket",
"endpoint": null,
"prefix": null,
"region": "eu-west-1",
"accessKeyId": "********************",
"secretAccessKey": "******************************",
"defaultStorageClass": null
}
}
}
In the following sections are described which commands can be executed with remote-files.
profilesManage connection profiles
listList files in selected folder
downloadDownload selected file from source directory
uploadUpload selected file to target directory