Форум программистов, компьютерный форум, киберфорум
Наши страницы
Lazarus
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/22: Рейтинг темы: голосов - 22, средняя оценка - 4.82
Vladiator
1571 / 642 / 79
Регистрация: 24.02.2009
Сообщений: 9,269
1

Терминал в Linux

10.12.2009, 22:33. Просмотров 4200. Ответов 3
Метки нет (Все метки)

1. Как в Лазарусе открыть Терминал и кое-что там написать?
2. Как в Лазарусе сделать программу, которая при вводе в терминале делала как gcc:
Bash
1
gcc /myprog /myprog.c
и gcc компилирует программу со входными данными.
Должно указываться название программы и потом 1 параметр - путь к файлу, с которым будет работать консольное приложение, написанное в Лазарусе. Как такое реализовать?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2009, 22:33
Ответы с готовыми решениями:

Lazarus и терминал в linux
Как из программы послать команду в терминал Ну или на кройняк как запустить фаил *.SH

Терминал самообслуживания(диплом)
Здравствуйте! Нужно разработать программу,сенсорный терминал самообслуживания для магазина по...

В чём разница между Lazarus Linux i386 RPM и Lazarus Linux i386 DEB
Здравствуйте. Установил в виртуалке Ubuntu и хочу "покрутить" в ней Lazarus. Судя по отзывам,...

Linux терминал
в среду экзамен по linux , работа в терминале (выхватил чудом вопрос) может поможет кто: Работа с...

Linux терминал
в среду экзамен по linux , работа в терминале (выхватил чудом вопрос) может поможет кто: Работа с...

3
rangerx
1952 / 1561 / 478
Регистрация: 31.05.2009
Сообщений: 2,913
11.12.2009, 14:43 2
Цитата Сообщение от Kidalvь Посмотреть сообщение
Должно указываться название программы и потом 1 параметр - путь к файлу, с которым будет работать консольное приложение, написанное в Лазарусе. Как такое реализовать?
Параметры командной строки при вызове программы
Цитата Сообщение от Kidalvь Посмотреть сообщение
Как в Лазарусе открыть Терминал и кое-что там написать?
TProcess
1
Vladiator
1571 / 642 / 79
Регистрация: 24.02.2009
Сообщений: 9,269
11.12.2009, 15:00  [ТС] 3
rangerx, первая ссылка про коммандную строку в Windows.
А вторая почему-то не работает(
0
rangerx
1952 / 1561 / 478
Регистрация: 31.05.2009
Сообщений: 2,913
12.12.2009, 00:15 4
Цитата Сообщение от Kidalvь Посмотреть сообщение
rangerx, первая ссылка про коммандную строку в Windows.
Нет... Функции ParamStr и ParamCount прекрасно себе существуют и во FreePascal, а следовательно и в Lazarus
ParamStr
ParamCount
Цитата Сообщение от Kidalvь Посмотреть сообщение
А вторая почему-то не работает(
Хм.. у меня работает... В общем, если тебе необходимо просто запустить какую-нибудь программу, то можешь использовать SysUtils.ExecuteProcess('/full/path/to/binary',['arg1','arg2']);
Если же хочешь иметь полный контроль над процессом(например перенаправлять его вывод куда тебе нужно), то используй TPorcess
пример(взятый по ссылке)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Это демо-программа, показывающая, как запускать
 // внешнюю программу и читать ее вывод
 program launchprogram;
 
 // Подключаем модули
 uses 
   Classes, SysUtils, Process;
 
 // Опысываем переменную "AProcess"
 // И добавляем список строк TStringList для сбора данных
 // из вывода программы
 var 
   AProcess: TProcess;
   AStringList: TStringList;
 
 // Начинаем нашу программу
 begin
   // Создаем объект TProcess 
   AProcess := TProcess.Create(nil);
 
   // Создаем объект TStringList
   AStringList := TStringList.Create;
 
   // Зададим командную строку
   AProcess.CommandLine := 'ppc386 -h';
 
   // Установим опции программы. Первая из них не позволит нашей программе
   // выполнятся до тех пор, пока не закончит выполнение запущенная программа
   // Также добавим опцию, которая говорит, что мы хотим прочитать 
   // вывод запущенной программы
   AProcess.Options := AProcess.Options + [poWaitOnExit, poUsePipes];
 
   // Теперь запускаем программу
   AProcess.Execute;
 
   // Пока запущенная программа не закончится, досюда мы не дойдем
 
   // А теперь прочитаем вывод в список строк TStringList.
   AStringList.LoadFromStream(AProcess.Output);
 
   // Сохраним вывод в файл
   AStringList.SaveToFile('output.txt');
 
   // После сохранения файла мы можем уничтожить
   // TStringList и TProcess.
   AStringList.Free;
   AProcess.Free;   
 end.
но, если объём вывода программы слишком большой, то это работать не будет, надо делать немного по другому...
1
12.12.2009, 00:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2009, 00:15

Терминал в Linux Mint 17.2 Xfce
Не могу писать в терминале, в терминале даже нет этой "каретки", раньше стоял cinnamon, все...

Перестал открываться терминал! Linux mint 18
Приветсвтую всех любителей пингвинов. Сижу на линуксе третий день , вчера копалься в терминал ,...

Linux Ubuntu компилирование через терминал
Подскажите плз! В линуксе дебиане скомпилировать из .pas можно с помощью команды gpc -o file...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru