Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2009, 20:33   #1
Win32Trojan
Новичок
Джуниор
 
Регистрация: 29.09.2009
Сообщений: 4
Лампочка Использование консольных команд [си]

Каким образом можно использовать команды предназначенные для терминалов, конкретно интересует команды echo. К примеру как реализовать ввод в консоль
echo -e "\Eс" или echo -en "\033[12A\033[30G\033[1;5;31;41m list \033[0m\033[12E" ,так чтобы она интерпретировалась как команда и успешно выполнилась ?
Win32Trojan вне форума Ответить с цитированием
Старый 29.09.2009, 20:51   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

какие именно? если только echo - то это то же printf. иначе system("you_command");
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 29.09.2009, 20:58   #3
jojahti
Подтвердите свой е-майл
 
Регистрация: 27.07.2009
Сообщений: 437
По умолчанию

Это с++, но может и на с распространяется?


Код:
#include <cstdlib>
int main() {
 system("color 30");
 system("pause");
}
jojahti вне форума Ответить с цитированием
Старый 29.09.2009, 21:10   #4
Win32Trojan
Новичок
Джуниор
 
Регистрация: 29.09.2009
Сообщений: 4
По умолчанию

Используются esc коды
Цитата:
Сообщение от pproger Посмотреть сообщение
иначе system("you_command");
с ситемом получалось что то вроде
system("echo -e '\E[10A'");
но если необходимо использовать двойныйе ковычки вместо одинарных
system("echo -e "\E[10A""); - косяк, дифайн тоже неспасает...
Win32Trojan вне форума Ответить с цитированием
Старый 29.09.2009, 21:12   #5
jojahti
Подтвердите свой е-майл
 
Регистрация: 27.07.2009
Сообщений: 437
По умолчанию

Ушки вроде юзаются непосредственно в кмд. После них всегда символом консоль всё считает.

Напиши что ты там хочешь ввести текстом, как это в консоли выглядит. Надо поэкспериментировать.
jojahti вне форума Ответить с цитированием
Старый 29.09.2009, 21:19   #6
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Win32Trojan Посмотреть сообщение
Используются esc коды

с ситемом получалось что то вроде
system("echo -e '\E[10A'");
но если необходимо использовать двойныйе ковычки вместо одинарных
system("echo -e "\E[10A""); - косяк, дифайн тоже неспасает...
Ну, вероятно, потому что правильно вот так:
Код:
system("echo -e \"\\E[10A\"");
netrino вне форума Ответить с цитированием
Старый 29.09.2009, 21:24   #7
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

у меня и так все выполняется:
http://img406.imageshack.us/img406/6...81280x800s.png
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 29.09.2009, 21:31   #8
Win32Trojan
Новичок
Джуниор
 
Регистрация: 29.09.2009
Сообщений: 4
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
Ну, вероятно, потому что правильно вот так:
Код:
system("echo -e \"\\E[10A\"");
Так не выполняется команда.

pproger почти то что нужно но опять же с двойными ковычками будет косяк (

Как ни старнно на даботает даже так
Код:
#include <stdio.h>
int main()
    {
char *echo="\E[42m";
printf("%s",echo);
     return 0;   
    }
jojahti вводить буду различные esc команды начиная от смены цвета заканчивая выводом устройств.

И еще каким образом можно скрыть то что выполняет echo.

Последний раз редактировалось Win32Trojan; 29.09.2009 в 21:36.
Win32Trojan вне форума Ответить с цитированием
Старый 29.09.2009, 21:35   #9
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

2Win32Trojan
может тогда не надо изголяться и заюзать ncurses? если тебе рисовалка консольная нужна
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 29.09.2009, 21:44   #10
Win32Trojan
Новичок
Джуниор
 
Регистрация: 29.09.2009
Сообщений: 4
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
2Win32Trojan
может тогда не надо изголяться и заюзать ncurses?
Дело в то что нужно использовать именно esc коды.

Всем спасибо за быстрые ответы.

Вариант pproger'а очень подходит...
Win32Trojan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
tasm, использование команд ввода/вывода. Доступ к портам iggor Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 17.06.2009 22:58
Обработка сообщений в консольных приложениях Mixasik Общие вопросы Delphi 2 06.06.2009 22:50
CreateProcess. Существуют тонкости в запуске консольных приложений? st01en Win Api 10 12.05.2009 11:50
Задача на ассемблере. Использование команд сдвига. SoundMan Помощь студентам 2 25.09.2008 21:17