Канал - это межпроцессное соединение между файловыми дескрипторами двух процессов. Канал создается с помощью функции POSIX pipe() (из<unistd.h>). Оболочки создают каналы между процессами, если знак "|" используется символ: "cmd1 | cmd2" направляет вывод cmd1 на вход cmd2. В Windows используйте CreatePipe(). Этот механизм перенаправляет стандартный ввод, стандартный вывод и стандартную ошибку в вызывающий процесс в.NET и Java. </unistd.h>
2 ответа

Разветвление трубопровода в оболочке

Прежде всего, я пытался искать похожие темы в Google и Stackru, но ничего подобного не нашел. ВОПРОС: Есть ли способ обработки разветвления трубопровода в оболочке? ПРИМЕР: У меня есть следующее дерево каталогов: &gt; 1 &gt;&gt; 1.a &gt;&gt; 2.a &gt…
13 июн '14 в 16:51
4 ответа

Передать данные в пользовательский канал из компонента в угловых 2

Как передать данные в пользовательский канал из компонента?Я пытаюсь привязать данные формы к компоненту и передать в канал. &lt;input [(ngModel)]="phone" placeholder="Phone Number"&gt; хочу передать 'this.phone' в канал 'PhoneNum' из компонента. Эт…
10 янв '16 в 23:32
1 ответ

Когда использовать Pipes и когда использовать Shared Memory

Я читаю о различных механизмах IPC. Я пытаюсь выяснить сценарии, где мы используем общую память и где мы используем именованные каналы (FIFO). Трубы: множественный процесс может писать, однако только один процесс может читать. Операция записи являет…
14 мар '12 в 12:14
5 ответов

Как можно использовать каналы Unix между основным процессом и потоком?

Я пытаюсь передавать данные по каналам всякий раз, когда поступает сигнал от потока к основному процессу. Это возможно?Как это может быть сделано? Эта проблема: Дочерний поток читает данные и помещает их в очередь. Главное приложение выполняет свои …
08 июн '09 в 15:00
2 ответа

Какой конец канала предназначен для ввода, а какой для вывода?

Недавно я начал подозревать, что я неправильно использую концы труб: Из справочных страниц: pipe () создает канал.. ..pipefd[0] ссылается на конец чтения канала. pipefd[1] относится к концу записи канала. Так что, на мой взгляд, это было так: .-----…
23 окт '11 в 15:20
1 ответ

Можем ли мы использовать AND и OR в Java вместо && и ||?

Я знаю, что мы можем в PHP, но я ничего не могу найти для Java if (bool1 AND bool2) {...} вместо: if (bool1 &amp;&amp; bool2) {...}
06 окт '13 в 03:08
1 ответ

Как читать данные из открытой трубы: нужен пример

Может ли кто-нибудь привести небольшой пример или направить меня к правильному материалу для чтения, чтобы решить следующую проблему: ls | ./myprog Я хотел бы добиться, чтобы моя программа считывала информацию с ls и просто выводила ее на экран. Мне…
08 мар '15 в 16:34
1 ответ

Процесс не получает канал от proc_open. lessc - язык динамических стилей

Вот источник программного обеспечения LessC, я думаю, что это будет полезно: https://github.com/cloudhead/less.js/blob/master/bin/lessc ЭТА ПРОБЛЕМА Я использую lessc в оболочке просто: lessc file.less и я получаю вывод файла CSS. Я пытался сделать …
23 фев '12 в 23:13
3 ответа

Bash/Python: открытый URL и печать топ-10 слов

Мне нужно извлечь 10 наиболее часто встречающихся слов из текста, используя конвейер (и любые дополнительные скрипты Python по мере необходимости); выводом является блок всех заглавных букв, разделенных пробелом. Этот канал должен извлекать текст из…
20 май '12 в 14:49
3 ответа

Pipe() системный вызов

Я изучаю трубопровод и оболочку в классе систем. Я возиться с strace, Я запускаю его на какой-то программе под названием dpipe, в strace журнал, я вижу следующее: pipe([3, 4]) pipe([5, 6]) Что представляют собой эти целые числа? Я в соответствии с э…
21 фев '12 в 02:42
1 ответ

Поставить трубку на стандартный процесс другого процесса

Я использую канал, чтобы отправить массив чисел другому процессу, чтобы отсортировать их. Пока что я могу получить результат от другого процесса, использующего fdopen. Тем не менее, я не могу понять, как отправить данные из канала в качестве стандар…
17 фев '14 в 06:58
1 ответ

Как перенаправить вывод из команды pipe в файл

У меня есть программа, которая анализирует данную команду и распределяет все аргументы / программы в структуре. В моей основной программе, которая выполняет команды, я пытаюсь перенаправить вывод команды pipe в файл, если задано ">". Например, моя п…
05 дек '13 в 01:59
1 ответ

GCC в HP-UX, множество проблем с poll(), pipe() и файлами

У меня много проблем с созданием логгера "посредника" - намерение разместить его на пути над элементом в /usr/bin и записывать все, что идет в приложение и из приложения. (Стороннее приложение черного ящика по какой-то причине не работает по протоко…
22 июн '09 в 23:32
2 ответа

angular2 ng для асинхронной фильтрации труб не работает

Мой код извлекает список пользователей из службы и отображает с помощью ngfor async без проблем. Я хотел предоставить пользователю возможность фильтровать результаты с помощью фильтрующего канала. Просто не могу заставить это работать. Пробовал с и …
19 июл '17 в 19:00
1 ответ

Используя трубу в программировании на с

Я использую трубу в c, чтобы создать программу, которая определяет, является ли введенное пользователем целое число четным или нечетным. Кроме того, он должен соответствовать следующим требованиям: родительский процесс должен отправить целое число р…
07 окт '13 в 18:23
3 ответа

Как создать скрытое одноразовое консольное приложение и общаться с ним?

Я написал небольшое консольное приложение, чтобы обернуть стороннюю DLL, которая имеет проблемы. Я звоню из приложения с графическим интерфейсом, используя _popen, и просто хочу прочитать значение из стандартного вывода консольной программы. При это…
18 авг '09 в 18:58
1 ответ

Где ядро ​​Linux хранит данные, записанные в канал

Предположим следующий простой код: #include &lt;stdio.h&gt; #include &lt;unistd.h&gt; #include &lt;sys/types.h&gt; main() { int fd[2]; pipe(fd); // ... write(fd, buf, VERY_BIG_NUMBER); // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ } Теперь мои вопросы: Может …
15 окт '15 в 14:39
1 ответ

Как передать переменную, определенную в C, в Gnuplot через канал?

Мне нужно передать переменную, определенную в моей основной программе (обычный C), в Gnuplot через канал. Как я могу это сделать? Любая помощь очень ценится. Спасибо PS: Ubuntu 12.04.3 LTS, GCC 4.6.3 Код: FILE *pipe = popen("gnuplot -persist","w"); …
22 дек '13 в 22:56
2 ответа

Как правильно использовать трубу в цикле, верно ли мое?

Я хочу знать, правильно ли я использую pipe, этот код находится в дочернем процессе fork(), а pfd - указатель канала: char buf[1024]; while(1){ signal(SIGUSR1, OnSigUsr1); sleep(10000); if(get==1){ get=0; close(pfd[1]); read(pfd[0], buf, sizeof(buf)…
07 окт '16 в 16:02
2 ответа

C под Ubuntu - не ожидаемый результат, пытаясь решить "Колесо игры"

Колесо. Основной процесс (A) создаст подпроцесс (B), который создаст другой подпроцесс (C). Затем основной процесс (A) отправит сгенерированное случайное число (от 1000 до 2000) на процесс B. Процесс B вычтет 10 единиц и отправит число на процесс C.…
18 апр '15 в 14:48