Ceci est une ancienne révision du document !
Table des matières
duck
Outil universel de transfert de fichiers, Duck s'exécute dans le shell sous Linux et OS X ou dans l'invite de ligne de commande de Windows.
Il permet de modifier des fichiers sur des serveurs distants, télécharger, charger et copier entre serveurs via FTP, SFTP ou WebDAV.
Il prend en charge le stockage en cloud Amazon S3 et les déploiements OpenStack Swift.
Pré-requis
Installation
- Paquet DEB :
- Ajoutez le dépôt :
...@...:~ $ sudo apt-add-repository "deb https://s3.amazonaws.com/repo.deb.cyberduck.io stable main"
- et sa clé :
...@...:~ $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FE7097963FEFBE72
- Installez :
...@...:~ $ sudo apt update ...@...:~ $ sudo apt install duck
Configuration
Utilisation
...@...:~ $ duck [options...]
Pour de l'aide :
...@...:~ $ duck --help
Les URL doivent être pleinement qualifiées.
Les chemins peuvent désigner :
- un fichier distant (ftps:user@example.net/resource) * ou un dossier (ftps:user@example.net/directory/) avec une barre oblique finale.
Vous pouvez référencer des fichiers relatifs à votre répertoire personnel avec /~ (ftps://user@example.net/~/).
Protocoles par défaut
WebDAV (HTTP) | dav://<hostname>/<folder>/<file> |
WebDAV (HTTPS) | davs://<hostname>/<folder>/<file> |
FTP (File Transfer Protocol) | ftp://<hostname>/<folder>/<file> |
FTP-SSL (Explicit AUTH TLS) | ftps://<hostname>/<folder>/<file> |
SFTP (SSH File Transfer Protocol) | sftp://<hostname>/<folder>/<file> |
Windows Azure Blob Storage | azure:(//<hostname>)/<container>/<key> |
Backblaze B2 Cloud Storage | b2:/<container>/<key> |
Google Cloud Storage | gs:/<container>/<key> |
Amazon S3 | s3:(//<hostname>)/<container>/<key> |
OpenStack Swift (Keystone 2.0) | swift://<hostname>/<container>/<key> |
OpenStack Swift (Keystone 3) | swift://<hostname>/<container>/<key> |
Rackspace Cloud Files (US) | rackspace:/<container>/<key> |
DRACOON (OAuth) | dracoon:(//<hostname>)/<folder>/<file> |
Dropbox | dropbox:/<folder>/<file> |
Google Drive | googledrive:/<folder>/<file> |
Microsoft OneDrive | onedrive:/<folder>/<file> |
Microsoft SharePoint | sharepoint:/<folder>/<file> |
Microsoft SharePoint Site | sharepoint-site:(//<hostname>)/<folder>/<file> |
DRACOON (OAuth) %%dracoon:(//<hostname>)/<folder>/<file>%% Dropbox %%dropbox:/<folder>/<file>%% Google Drive %%googledrive:/<folder>/<file>%% Microsoft OneDrive %%onedrive:/<folder>/<file>%% Microsoft SharePoint %%sharepoint:/<folder>/<file>%% Microsoft SharePoint Site %%sharepoint-site:(//<hostname>)/<folder>/<file>%%
Options
–application <path> | Application éditeur externe | ||
-c,–mkdir <url> | Créer un répertoire | ||
–chmod <mode> | Définir les permissions explicites en octal pour le fichier téléchargé | ||
–copy <url> <url> | Copier entre les serveurs | ||
-d,–download <url> <file> | Télécharger un fichier ou un dossier. Un dossier se note avec un '/' à la fin | ||
-D,–delete <url> | Supprimer | ||
–debug | Afficher la sortie de débogage | ||
-e,–existing <action> | Actions de transfert pour les fichiers existants : | ||
Downloads and uploads: | resume | Reprendre (ajouter des fichiers existants) | |
overwrite | Écraser (écraser tous les fichiers) | ||
similar | Renommer (renommer les fichiers transférés avec un horodatage ajouté au nom de fichier) | ||
rename | Renommer les fichiers existants (renommer les fichiers existants avec l'horodatage ajouté au nom de fichier) | ||
skip | Ignorer (Ignorer le transfert des fichiers qui existent déjà) | ||
compare | Comparer (ignorer les fichiers qui correspondent à la taille, à la date de modification ou à la somme de contrôle) | ||
cancel | Annuler (Annuler) | ||
Synchronize: | download | Télécharger (Télécharger les fichiers modifiés et manquants) | |
upload | Téléverser (téléverser les fichiers modifiés et manquants) | ||
mirror | Miroir (téléchargement et téléchargement) | ||
cancel | Annuler (Annuler) | ||
–edit <url> | Modifier le fichier dans un éditeur externe | ||
-h,–help Print this help | |||
-i,–identity <private key file> Selects a file from which the identity (private key) for public key authentication is read. | |||
-l,–list <url> List files in remote folder | |||
-L,–longlist <url> Long list format with modification date and permission mask | |||
–nochecksum Skip verifying checksum | |||
–nokeychain Do not save passwords in keychain | |||
-p,–password <password or secret key> Password | |||
-P,–preserve Preserve permissions and modificatin date for transferred files | |||
–parallel <connections> Number of concurrent connections to use for transfers | |||
–profile <profile> Use connection profile | |||
-q,–quiet Suppress progress messages | |||
-r,–retry Retry failed connection attempts | |||
–region <location> Location of bucket or container | |||
–synchronize <url> <directory> Synchronize folders | |||
–throttle <bytes per second> Throttle bandwidth | |||
-u,–username <username or access key> Username | |||
–udt Use UDT protocol if applicable | |||
–upload <url> <file> Upload file or folder recursively | |||
-V,–version Show version number and quit. | |||
-v,–verbose Print transcript | |||
–vault <path> Unlock vault | |||
-y,–assumeyes Assume yes for all prompts |
- -application <path> External editor application
-c,–mkdir <url> Make directory
- -chmod <mode> Set explicit permission from octal mode value for uploaded file
- -copy <url> <url> Copy between servers
-d,–download <url> <file> Download file or folder. Denote a folder with a trailing '/' -D,–delete <url> Delete
- -debug Print debug output
-e,–existing <action> Transfer actions for existing files
Downloads and uploads: resume Resume (Append existing files) overwrite Overwrite (Overwrite all files) similar Rename (Rename transferred files with a timestamp appended to the filename) rename Rename existing (Rename existing files with timestamp appended to filename) skip Skip (Skip transfer of files that already exist) compare Compare (Skip files that match size, modification date or checksum) cancel Cancel (Cancel) Synchronize: download Download (Download changed and missing files) upload Upload (Upload changed and missing files) mirror Mirror (Download and Upload) cancel Cancel (Cancel) --edit <url> Edit file in external editor
-h,–help Print this help -i,–identity <private key file> Selects a file from which the identity (private key) for public key authentication is read. -l,–list <url> List files in remote folder -L,–longlist <url> Long list format with modification date and permission mask
- -nochecksum Skip verifying checksum
- -nokeychain Do not save passwords in keychain
-p,–password <password or secret key> Password -P,–preserve Preserve permissions and modificatin date for transferred files
- -parallel <connections> Number of concurrent connections to use for transfers
- -profile <profile> Use connection profile
-q,–quiet Suppress progress messages -r,–retry Retry failed connection attempts
- -region <location> Location of bucket or container
- -synchronize <url> <directory> Synchronize folders
- -throttle <bytes per second> Throttle bandwidth
-u,–username <username or access key> Username
- -udt Use UDT protocol if applicable
- -upload <url> <file> Upload file or folder recursively
-V,–version Show version number and quit. -v,–verbose Print transcript
- -vault <path> Unlock vault
-y,–assumeyes Assume yes for all prompts
Profils de connexion
Vous pouvez installer des profils de connexion supplémentaires dans le répertoire de support de l'application.
Utilisez l'option –profile pour référencer un fichier de profil de connexion à utiliser non installé dans l'emplacement standard.
Profils de connexion tiers
Installer des profils de connexion supplémentaires dans ~/.duck/profiles
URI
L'argument <url> pour -copy, -download, -upload et -synchronize doit satisfaire aux règles suivantes :
- Chaque URL doit commencer par http/https:
- Selon le protocole auxquels vous faites référence, différentes règles s'appliquent.
- Pour tous les protocoles sans nom d'hôte par défaut (par exemple WebDAV, SFTP et FTPS), vous devez utiliser un URI pleinement qualifié https://user@hostname/path
- Pour les protocoles où un nom d'hôte par défaut est défini, mais que vous pouvez modifier (par exemple, S3), vous pouvez utiliser des URI pleinement qualifiés ou des
- chemins absolus : s3:/bucket/path
- Chemins relatifs : s3:user@path ou s3:user@/path L'omission de la première barre oblique dans un chemin relatif utilise le répertoire d'origine par défaut pour ce protocole.
Pour les protocoles où un nom d'hôte par défaut est défini et que vous n'êtes pas autorisé à le modifier (par exemple OneDrive, Dropbox, Google Drive), vous pouvez utiliser n'importe quelle combinaison des noms ci-dessus en respectant les règles suivantes :- Les URI entièrement qualifiées sont analysées comme des chemins relatifs. onedrive:Some/Folder/ est analysé comme onedrive:Some/Folder.
- Pour les protocoles où un chemin par défaut non modifiable est défini (par exemple, l'accès à un profil NextCloud préconstruit avec un chemin défini sur /remote.php/webdav). Si vous modifiez le chemin, il sera ajouté au chemin par défaut. nextcloud:/path devient nextcloud:/remote.php/webdav/path. Les espaces et autres caractères spéciaux n'ont pas besoin d'être codés avec des caractères pourcentage tant que le chemin est entre guillemets duck –upload “scheme:hostname/path with/spaces” “/Path/To/Local/File With/Spaces”).
Désinstallation
Voir aussi