![]() |
Модераторы: powerfox, ZeeLax |
![]() ![]() ![]() |
|
kuvshinka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
подскажите пож-та можно ли (как именно) программно (например из Qt-программы или откуда-то еще) запускать линукс-команды (например cd papka1, pwd и др.) ? (как я бы запускала их "вручную" из терминала)
|
|||
|
||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 14 Всего: 39 |
Самое простое - system. Эмитирует запуск с терминала.
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
bilbobagginz |
|
|||
![]() Naughtius Maximus ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8813 Регистрация: 2.3.2004 Где: Israel Репутация: 113 Всего: 317 |
kuvshinka,
в зависимости от я.п., потребностей надо определиться либо
напр. гулять по каталогам можно вызовом chdir(), проверять разрешения файла вызовом access(), fstat() и т.д. для чтения юзать read(), для писания - write(). -------------------- Я ещё не демон. Я только учусь. |
|||
|
||||
ZeeLax |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4388 Регистрация: 20.8.2006 Где: Алма-Ата Репутация: 26 Всего: 88 |
djamshud, Имитирует.
-------------------- Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none. — Doug Larson |
|||
|
||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 14 Всего: 39 |
ZeeLax, во я лох то!
ЗЫ, спасибо. -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
kuvshinka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
что за system, функция или что? подскажите ссылки (а может быть и книги) где можно "познакомиться с функциями библиотеки системных вызовов <unistd.h>" (про system в основном)
я.п. - С++...поэтому и спрашивала про Qt- она же вроде мультиплатформенная...вот и хотелось бы написать с ее помощью приложение с GUI, где например по кнопке выполнялось бы копирование (ср) файла, удаление (rm) и т.п.- как будто бы из терминала... |
|||
|
||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 14 Всего: 39 |
kuvshinka, cp и rm - не кроссплатформенно! Вам нужно почитать кутешную документацию по QFile, никаких внешних программ вызывать не придется.
ЗЫ. man system <- из консоли, если все же интересно. Добавлено через 1 минуту и 12 секунд ЗЗЫ. Сам вызов system кроссплатформенный. -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
kuvshinka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
подскажите пож-та:
1. пример вызова system? например программный вызов ls-l... 2. как можно из скрипта вывести ошибку его работы (если она есть) в окошко (аля как если бы я вводила данную неверную команду в терминале и получила бы ответ) |
|||
|
||||
djamshud |
|
||||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 14 Всего: 39 |
1.
2. Из скрипта в окошко - плохая идея. Лучше просто пернуть код ошибки: в bash:
1 или любое число не равное нулю - код ошибки. Ноль считается нормальным завершением программы (скрипта). Это сообщение отредактировал(а) djamshud - 18.1.2010, 15:58 -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
||||
|
|||||
kuvshinka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
djamshud:
1. спасибо. я думала ее прямо в терминале можно использовать...не поняла сразу.... 2. да, но как я по коду ошибки узнаю что за ошибка? и куда он выведется? ведь если я запускаю скрипт простым щелчком мыши по нему (а не через терминал (bash)), то никаких признаков неверности его отработки нет (а мне надо знать в чем именно произошла ошибка в скрипте...) - поэтому про окошко и был вопрос... |
|||
|
||||
kuvshinka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
ну плииииииз подскажите...........
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Linux/UNIX: Oбщие вопросы" | |
|
В тему здесь вопросы общие - не привязанные к определенному ПО или дистрибутиву BSD/Linux/UNIX.
За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу). В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим. Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | *NIX системы: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |