Comment lancer des opérations sur les fichiers Nautilus à partir de la ligne de commande?

19

Comment démarrer l'interface graphique "Opérations sur les fichiers" de Nautilus à partir de la ligne de commande?

Opérations sur les fichiers

Mon objectif est de l'inclure dans un script Nautilus.

ændrük
la source
2
Je ne suis pas sûr de comprendre le but / point.
RolandiXor
pourquoi n'utilisez-vous pas simplement la commande 'cp' dans bash? si vous souhaitez visualiser un transfert, vous pouvez utiliser la barre de progression zenity. quelque chose comme 'zenity --progress --text = "Transfert de fichiers .." --title = "Transfert commencé"' fonctionnerait. pour plus d'informations sur la zénité, consultez la page de manuel et les liens: ubuntuforums.org/archive/index.php/t-306515.html ubuntuforums.org/archive/index.php/t-183228.html library.gnome.org/users/ zenity / stable /…
gourgi
@gourgi Je souhaite l'intégrer à l'indicateur de progression de tout transfert que j'ai peut-être déjà commencé via Nautilus.
ændrük

Réponses:

7

La réponse courte est, vous ne pouvez pas. Nautilus n'est pas conçu pour permettre ce genre de chose et vous pouvez parcourir le code source de nautilus et regarder les sections de copie / déplacement de fichier pour voir comment cela fonctionne.

Une partie de ce manque d'intégration était la motivation derrière la conception des indicateurs de progrès. Il remplacerait la fenêtre de progression de nautilus et plusieurs autres incohérences de progression et permettrait à plusieurs programmes de montrer leur progression à l'utilisateur de la même manière:

https://wiki.ubuntu.com/Ayatana/ProgressIndication

Plus de travail et de plaidoyer pour ces nouvelles conceptions aideraient, permettant l'intégration de toutes sortes d'outils.

Martin Owens -doctormo-
la source
3

D'après une discussion dans irc: //irc.gnome.org#nautilus, je peux dire que la version actuelle de Nautilus n'expose pas les méthodes de fonctionnement des fichiers sur D-Bus, mais la version 3.0 le fera, donc la réponse devrait être

vous ne pouvez pas, maintenant, mais vous le ferez à l'avenir

enzotib
la source
2

Apparemment, cela est désormais pris en charge; au moins ce qui suit semble fonctionner sous 12.04:

qdbus org.gnome.Nautilus /org/gnome/Nautilus org.gnome.Nautilus.FileOperations.CopyFile "file:///source/directory" "*" "file:///destination/directory" ""

/source/directoryest le chemin absolu de votre répertoire source, *est le glob pour le fichier [s] à copier, /destination/directoryest votre répertoire de destination et le dernier ""est pour le nom du fichier de destination. Notez que vous devez avoir le dernier là même s'il est vide comme ici, pour remplir la signature de la méthode. De plus, si vous spécifiez un nom cible et avez plusieurs fichiers source, ils seront tous copiés dans ce fichier de destination, donnant une invite de remplacement pour chaque fichier après le premier (qui peut ou non être ce que vous voulez).

Jani Uusitalo
la source
La réponse de Jani Uusitalo fonctionne sur nautilus 3.4.2, Ubuntu 12.10
totti