Вопросы с тегом «pipe»

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

1536
Как перенаправить и добавить как stdout, так и stderr в файл с помощью Bash?

Чтобы перенаправить стандартный вывод в усеченный файл в Bash, я знаю использовать: cmd > file.txt Чтобы перенаправить стандартный вывод в Bash, добавив в файл, я знаю использовать: cmd >> file.txt Чтобы перенаправить как stdout, так и stderr в усеченный файл, я знаю использовать: cmd...

982
Как я могу трубу stderr, а не stdout?

У меня есть программа, которая записывает информацию в stdoutи stderr, и мне нужно grepпройти через то, что поступает в stderr , игнорируя stdout . Конечно, я могу сделать это в 2 этапа: command > /dev/null 2> temp.file grep 'something' temp.file но я бы предпочел иметь возможность делать это...

421
Трубный выход и состояние захвата выхода в Bash

Я хочу , чтобы выполнить давно работающую команду в Bash, и оба захват его статуса выхода, и тройник его выхода. Итак, я делаю это: command | tee out.txt ST=$? Проблема в том, что переменная ST фиксирует состояние выхода команды, teeа не команды. Как я могу решить это? Обратите внимание, что...

261
Как предотвратить SIGPIPE (или обращаться с ними правильно)

У меня есть небольшая серверная программа, которая принимает соединения через TCP или локальный сокет UNIX, читает простую команду и, в зависимости от команды, отправляет ответ. Проблема в том, что клиент может быть не заинтересован в ответе иногда и выходит рано, поэтому запись в этот сокет...

257
Формат даты как дд / мм / гггг с использованием труб

Я использую dateканал для форматирования даты, но я не могу получить точный формат, который я хочу, без обходного пути. Я неправильно понимаю трубы или это просто невозможно? //our root app component import {Component} from 'angular2/core' @Component({ selector: 'my-app', providers: [], template: `...

252
Как определить, работает ли мой сценарий оболочки через канал?

Как определить из сценария оболочки, отправляется ли его стандартный вывод на терминал или он передается другому процессу? Показательный пример: я хотел бы добавить escape-коды для раскрашивания вывода, но только при интерактивном запуске, а не при передаче по конвейеру, аналогично тому, что ls...

234
Как передать стандартный вывод, сохраняя его на экране? (а не в выходной файл)

Я хотел бы передать стандартный вывод программы, сохраняя ее на экране. С простым примером ( echoиспользуйте здесь только для иллюстрации): $ echo 'ee' | foo ee <- вывод, который я хотел бы увидеть Я знаю, что можно скопировать стандартный вывод в файл, но это не то, что я хочу. $ echo 'ee' |...

205
Чтение значений в переменную оболочки из канала

Я пытаюсь получить bash для обработки данных со стандартного ввода, которые попадают в канал, но не повезло. Я имею в виду не одну из следующих работ: echo "hello world" | test=($(< /dev/stdin)); echo test=$test test= echo "hello world" | read test; echo test=$test test= echo "hello world" |...

205
Как мне вызвать канал Angular 2 с несколькими аргументами?

Я знаю, что могу назвать трубу вот так: {{ myData | date:'fullDate' }} Здесь труба даты принимает только один аргумент. Каков синтаксис для вызова канала с большим количеством параметров, из шаблона HTML компонента и непосредственно в...

198
Как использовать `jq` в конвейере оболочки?

Кажется, я не могу jqвести себя «нормально» в конвейере оболочки. Например: $ curl -s https://api.github.com/users/octocat/repos | jq | cat приводит к jqпростой распечатке текста справки *. То же самое происходит, если я пытаюсь перенаправить jqвывод в файл: $ curl -s...

166
Почему cURL возвращает ошибку «(23) Ошибка записи тела»?

Он работает как единый инструмент: curl "someURL" curl -o - "someURL" но он не работает в конвейере: curl "someURL" | tr -d '\n' curl -o - "someURL" | tr -d '\n' он возвращает: (23) Failed writing body В чем проблема с конвейером вывода cURL? Как буферизовать весь вывод cURL, а затем обработать...

151
Многопроцессорная обработка - труба против очереди

Каковы принципиальные различия между очередями и каналами в многопроцессорном пакете Python ? В каких сценариях следует выбирать один над другим? Когда выгодно использовать Pipe()? Когда выгодно использовать...

151
Использование каналов в ngModel для элементов INPUT в Angular

У меня есть поле ВВОДА HTML. <input [(ngModel)]="item.value" name="inputField" type="text" /> и я хочу отформатировать его значение и использовать существующий канал: .... [(ngModel)]="item.value | useMyPipeToFormatThatValue" .... и получите сообщение об ошибке: Не может быть конвейера в...

148
Как открыть каждый файл в папке?

У меня есть скрипт на python parse.py, который в скрипте открывает файл, скажем file1, а затем что-то делает, может быть, распечатывает общее количество символов. filename = 'file1' f = open(filename, 'r') content = f.read() print filename, len(content) Прямо сейчас я использую стандартный вывод,...

147
Как заставить приложение думать, что его стандартный вывод - это терминал, а не труба

Я пытаюсь сделать противоположное « Определить, является ли stdin терминалом или каналом? ». Я запускаю приложение, которое меняет свой формат вывода, потому что оно обнаруживает канал в STDOUT, и я хочу, чтобы оно считало, что это интерактивный терминал, поэтому я получаю тот же вывод при...

145
Сохранить окраску после передачи grep в grep

В разделе « Сохранить ls-раскраску после grep'ing» есть аналогичный вопрос, но меня раздражает, что если вы передадите цветной вывод grep в другой grep, раскраска не сохраняется. В качестве примера grep --color WORD * | grep -v AVOIDне сохраняет цвет первого вывода. Но для меня ls | grep FILEцвет...