Название: QProcess, запуск приложения с параметрами Отправлено: santaclaus от Декабрь 02, 2009, 11:23 Доброго времени суток!
есть следующий код: Код: QProcess *proc = new QProcess(this);//обьявление процесса Суть такая, если не задавать |grep ПИД_ИСКОМОГО_ПРОЦЕССА, то работает хорошо и все выводит, но как только дописываешь греп, то пусто. Посоветуйте как реализовать! Всем привет! Название: Re: QProcess, запуск приложения с параметрами Отправлено: spectre71 от Декабрь 02, 2009, 11:37 Доброго времени суток! есть следующий код: Код: QProcess *proc = new QProcess(this);//обьявление процесса Суть такая, если не задавать |grep ПИД_ИСКОМОГО_ПРОЦЕССА, то работает хорошо и все выводит, но как только дописываешь греп, то пусто. Посоветуйте как реализовать! Всем привет! "|grep 25224" - не параметр коммандной строки для "ps". "|" - пайп организуемый shell. Ты путаеешь понятия. Ты не вызываешь shell, ты сам создаешь один процесс A это "ps -eo pid,comm |grep 25224" комманда для shell создать два процесса "ps -eo pid,comm" и "grep 25224" И передать данные из stdout перевого на stdin второго Название: Re: QProcess, запуск приложения с параметрами Отправлено: santaclaus от Декабрь 02, 2009, 12:44 Спасибо, ошибку понял.
Название: Re: QProcess, запуск приложения с параметрами Отправлено: BigHom от Апрель 06, 2010, 09:02 Поясните - как надо написать? (как должно быть , чтоб правильно работало?)
Название: Re: QProcess, запуск приложения с параметрами Отправлено: crossly от Апрель 06, 2010, 09:19 простейший способ сунуть это в командный файл... либо читать ассистент на предмет void QProcess::setStandardOutputProcess ( QProcess * destination )
Название: Re: QProcess, запуск приложения с параметрами Отправлено: kuzulis от Апрель 06, 2010, 10:01 Цитировать Поясните - как надо написать? (как должно быть , чтоб правильно работало?) попробуй вызывать шелл и его параметрами(аргументами) указывать : "ps -eo pid,comm |grep 25224"Название: Re: QProcess, запуск приложения с параметрами Отправлено: Alex Custov от Апрель 06, 2010, 17:09 Код
Соответственно, в QProcess передаёшь /bin/sh как программу и "-c", "\"ps -eo pid,comm |grep 25224\"" как два аргумента. Название: Re: QProcess, запуск приложения с параметрами Отправлено: BigHom от Апрель 29, 2010, 14:38 Ясно, а вот похожий случай: чтоб подсчитать КС cd-диска следует :
1) cмонтировать диск : mount /mnt/cdrom 2)перейти в каталог /mnt/cdrom : cd /mnt/cdrom 3)выполнить : tar c `ls -A|sort` |md5sum Как можно всё это выполнить из программы Qt ( интересуют 2-3 пункты ) , с учётом 2) перейти в каталог? Название: Re: QProcess, запуск приложения с параметрами Отправлено: crossly от Апрель 29, 2010, 15:05 выше все описано....
Название: Re: QProcess, запуск приложения с параметрами Отправлено: BigHom от Апрель 30, 2010, 09:43 выше все описано.... Допустим всё записано в командный файл file.com , как его запустить на выполнение? Название: Re: QProcess, запуск приложения с параметрами Отправлено: crossly от Май 03, 2010, 09:24 как обычный бинарник...
Название: Re: QProcess, запуск приложения с параметрами Отправлено: Marat(Qt) от Май 03, 2010, 09:59 Как вариант:
Код: /bin/sh -c "mount /mnt/cdrom&&cd /mnt/cdrom&&tar c `ls -A|sort` |md5sum" Название: Re: QProcess, запуск приложения с параметрами Отправлено: Alex Custov от Май 03, 2010, 13:31 Ясно, а вот похожий случай: чтоб подсчитать КС cd-диска следует : MD5 считается с устройства, а не с содержимого. То есть с файлв /dev/cdrom или другого, соответствующего CD-ROMу. |