Как я могу начать файловые операции Nautilus из командной строки?

Как запустить графический интерфейс "Файловые операции" Nautilus из командной строки?

Файловые операции

Моя цель - включить это в скрипт Nautilus.

3 ответа

Решение

Короткий ответ: ты не можешь. Nautilus не предназначен для такого рода вещей, и вы можете просмотреть исходный код nautilus и посмотреть разделы копирования / перемещения файлов, чтобы увидеть, как он работает.

Частично это отсутствие интеграции послужило мотивацией для разработки индикаторов прогресса. Он заменит окно прогресса nautilus и некоторые другие несоответствия хода выполнения и позволит нескольким программам одинаково показывать пользователю свой прогресс:

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

Помогло бы больше работы и пропаганды этих новых конструкций, позволяющих интегрировать все виды инструментов.

Из обсуждения в irc://irc.gnome.org#nautilus я могу сказать, что текущая версия Nautilus не предоставляет методов для работы с файлами на D-Bus, но версия 3.0 подойдет, поэтому ответ должен быть

Вы не можете, сейчас, но вы будете в будущем

По-видимому, теперь это поддерживается; по крайней мере, следующее работает в 12.04:

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

где /source/directory это абсолютный путь к вашей исходной директории, * является глобусом для файла [s] для копирования, /destination/directory ваш каталог назначения и последний "" для имени файла назначения. Обратите внимание, что вам нужно иметь последний там, даже если он пуст, как здесь, чтобы выполнить сигнатуру метода. Кроме того, если вы укажете целевое имя и у вас будет несколько исходных файлов, все они будут скопированы в этот один конечный файл, давая подсказку перезаписи для каждого файла после первого (который может или не может быть тем, что вы хотите).

Другие вопросы по тегам