LINUX.ORG.RU

KIO, gnome VFS: как вызвать из скрипта?


0

0

Требуется из скрипта смонтировать виртуальную файловую систему, скопировать оттуда файлы и отмонтировать её.

Какими командами можно это сделать?

P.S. Требуется для измерения производительности этих vfs в сравнении с самописной.

★★

Для kio достаточно

kfmclient copy src dst

где src - любой поддерживаемый KIO урл на чтение,
dst - любой поддерживаемый KIO урл на запись

alex_custov ★★★★★
()
Ответ на: комментарий от alex_custov

Re^2: KIO, gnome VFS: как вызвать из скрипта?

> Для kio достаточно kfmclient copy src dst

Спасибо.

Осталось дождаться гномеров :)

gaa ★★
() автор топика
Ответ на: комментарий от alex_custov

Re^2: KIO, gnome VFS: как вызвать из скрипта?

> kfmclient copy src dst

Что-то медленно оно как-то работает... Нельзя ли сделать то же самое, но без гуя и, соответственно, без индикатора прогресса, тормозящего работу?

gaa ★★
() автор топика
Ответ на: Re^2: KIO, gnome VFS: как вызвать из скрипта? от gaa

сделать каталог kiocopy, положить туда файлы

[alex kiocopy]$ cat main.cpp && echo
#include <kapplication.h>
#include <kcmdlineargs.h>
#include <kaboutdata.h>

#include <kio/job.h>
#include <kurl.h>

#include <cstdlib>

static KCmdLineOptions options[] =
{
    {"+[URL to copy from]", I18N_NOOP("URL to copy from."), 0},
    {"+[URL to copy to]",   I18N_NOOP("URL to copy to."),   0},
    { 0, 0, 0 }
};

int main(int argc, char **argv)
{
    KAboutData aboutData("kiocopy", "KIOCopy", "0.1.0", "KIOCopy",
            KAboutData::License_GPL, "(c) 2008, Me",
            QString::null, "http://bgg.net", QString::null);

    KCmdLineArgs::init(argc, argv, &aboutData);
    KCmdLineArgs::addCmdLineOptions(options);
    KCmdLineArgs *kargs = KCmdLineArgs::parsedArgs();
    KURL from, to;

    KApplication a;

    if(kargs->count() == 2)
    {
        from = KURL::fromPathOrURL(kargs->arg(0));
        to = KURL::fromPathOrURL(kargs->arg(1));
    }
    else
        exit(1);

    KIO::Job *job = KIO::copy(from, to, false);

    QObject::connect(job, SIGNAL(result(KIO::Job *)), &a, SLOT(quit()));

    return a.exec();
}

[alex kiocopy]$ cat kiocopy.pro && echo
######################################################################
# Automatically generated by qmake (1.07a) Tue Jun 3 23:43:34 2008
######################################################################

TEMPLATE = app
CONFIG -= moc
INCLUDEPATH += .
INCLUDEPATH += /usr/include/kde

# Input
SOURCES += main.cpp

LIBS += -lkdecore -lkio


-------------------------------------------------------------------------------
----------------------------

# cd kiocopy
# qmake-qt3
# make
# ./kiocopy http://ftp.de.debian.org/debian/pool/main/b/beep/beep_1.2.2.orig.tar.gz `pwd`

alex_custov ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.