Короткий ответ, Вы - более обеспеченная запись временного файла и открытие это. Получение каналов работать правильно более сложно и вероятно не даст Вам дополнительных преимуществ. Тем не менее вот то, что я нашел.
Если Ваш firefox
команда на самом деле запускает Firefox вместо того, чтобы говорить с уже рабочим экземпляром Firefox, можно сделать это:
echo '<h1>hello, world</h1>' | firefox /dev/fd/0
Который говорит Firefox явно читать свой стандартный вход, который является, куда канал помещает свои данные. Но если Firefox уже работает, firefox
команда просто собирается передать то имя к основному процессу Firefox, который считает его собственный стандартный вход, который, вероятно, ничего не даст ему и конечно не подключен к Вашему каналу.
Кроме того, при чтении из канала, Firefox буферизует вещи довольно в большой степени, таким образом, он не собирается обновлять страницу каждый раз, когда Вы даете ему новую строку HTML, если это - то, для чего Вы идете. Попробуйте заключительный Firefox и выполнение:
cat | firefox /dev/fd/0
(N.B. Вам действительно на самом деле нужно cat
здесь.) Вставляют некоторые длинные линии в Ваше окно оболочки неоднократно, пока Firefox не решает обновить страницу, и Вы видите, сколько данных требуется. Теперь отправьте сигнал Конца Файла путем удара Ctrl+D в новую строку и обновления Firefox часов немедленно. Но затем Вы не можете больше добавлять данные.
Настолько лучше всего, вероятно:
echo '<h1>hello, world</h1>' >my_temporary_file; firefox my_temporary_file
tc
(управление трафиком), от iproute2 комплекта.
Посмотрите Linux Advanced Routing & Traffic Control HOWTO – особенно, раздел организации очередей – и netem для справки.