web-dev-qa-db-fra.com

Comment accéder aux partages de Android appareils avec KDEConnect à l'aide de la ligne de commande

Lorsque des périphériques ont été couplés ordinateur <-> utilisant KDEConnect, est-il possible d’accéder à la carte SD du téléphone et à la mémoire interne directement à partir de la ligne de commande?

Cas d'utilisation:

Une fois les appareils appariés, je souhaite copier automatiquement les fichiers du téléphone (mémoire interne, carte SD externe) avec un script. Pas:

  1. Définir les appareils comme jumelés
  2. Script de lancement

Avec kdeconnect-cli je peux obtenir l'ID de périphérique comme ça:

$ kdeconnect-cli --id-only -a 
166ec0250e88ff2b

Mais je ne peux pas y accéder ici:

$ ls /run/user/1000/166ec0250e88ff2b/
ls: cannot access '/run/user/1000/166ec0250e88ff2b/': Permission denied

Permissions:

[root@Host]# ls  -la /run/user/1000/
ls: cannot access '/run/user/1000/166ec0250e88ff2b': Permission denied
...
drwx------ 9 user user 380 Nov 17 11:57 .
drwxr-xr-x 3 user user 60 Nov 17 08:07 ..
d????????? ? ?         ?           ?            ? 166ec0250e88ff2b

Comment puis-je accéder au système de fichiers de stockage interne et externe du téléphone?

$ ls -la /run/user/1000/166ec0250e88ff2b/storage
total 0
dr-x------ 1 user user 0 Jan  1  1970 0000-0000/
d--x------ 1 user user 0 Feb  6  1970 emulated/
d--x------ 1 user user 0 Sep  2 20:10 self/

$ ls -la /run/user/1000/166ec0250e88ff2b/storage/0000-0000/
ls: reading directory '/run/user/1000/166ec0250e88ff2b/storage/0000-0000/': Operation not permitted
total 0
1
photorar

Mconnect est une implémentation du protocole KDE Connect dans Vala/C disponible via github.com . Il n’a pas besoin des bibliothèques KDE et est fourni avec un client qui vous permet de partager facilement des fichiers à partir de la ligne de commande, par exemple.

 mconnectctl share-file /org/mconnect/device/0 /path/to/file

Voir la page liée github pour plus d'informations.

Vous devriez pouvoir utiliser mconnectctl pour vérifier si un périphérique spécifique est couplé, par exemple. pour un téléphone appelé Motorola Moto G Maciek connecté à /org/mconnect/device/0:

mconnectctl show-device /org/mconnect/device/0 | awk '/Motorola Moto G Maciek/{f=1}/Paired/{{if(f){g=1}}}f&&g{print $2;exit}'

Cela retournera true s'il est associé et peut être utilisé dans un script.

1
dessert