Как передать stdout по каналу в файл, если текущая команда уже передается по каналу через gzip

xscreensaver имеет a -watch опция:

- следите  за Печатью строка каждый раз состояние изменений экранной заставки: то, когда экран очищает, блокирует, не очищает, или когда рабочий взлом изменяется. Эта опция никогда не возвращается; это предназначается для использования сценариями оболочки, которые хотят реагировать на экранную заставку некоторым способом 1

UNBLANK состояние - то, что Вы ищете. Руководство включает сценарий в качестве примера с помощью этих опций.

1. http://www.jwz.org/xscreensaver/man3.html

3
30.01.2013, 00:58
4 ответа

innobackupex не производит его достижения по stdout, иначе это закончилось бы в tar.gz файл. Скорее всего, это производит его к stderr (быстрый взгляд на сценарий, кажется, подтверждает это), поэтому что необходимо сделать, перенаправить его stderr:

innobackupex ... 2>> progress.log | gzip > file.tar.gz
4
27.01.2020, 21:20

Вы означаете получать STDERR от innobackupex? Ваш вопрос не очень ясен.

innobackupex-1.5.1 --user=root --password=**** --stream=tar ./ 2> /path/to/file | gzip - > ... 
0
27.01.2020, 21:20
  • 1
    STDOUT от innobackupex, переданного по каналу в файл, был бы то, так как существует большая информация - особенно прогрессируют информационный –  Tom G11 29.01.2013, 22:09
  • 2
    Ummm..., который не объясняет, чего Вы хотите достигнуть, также. Вы уже обрабатываете STDOUT от innobackupex использование канала в gzip. –  tink 29.01.2013, 22:13

Я сделал бы это посредством выполнения этих команд в подоболочке

( innobackupex-1.5.1 --user=root --password=**** --stream=tar ./ \
   | gzip - >  /data/myfile.tar.gz ) 2> errors
0
27.01.2020, 21:20

1) Если Вы имеете в виду, Вы хотите передать вывод по каналу и к gzip для сжатия и к регулярному файлу, вот пример tee использование:

ls -a ~ | tee ls.txt - | grep "^\."

Это распечатает все "скрытые" точечные файлы в Вашем корневом каталоге (из-за grep), но весь вывод ls -a будет в ls.txt.

Посмотрите man tee для полного объяснения.

2) Если Вы подразумеваете, что хотите включать поток стандартной погрешности в поток стандартного вывода, добавить 2>&1 к команде.

0
27.01.2020, 21:20

Теги

Похожие вопросы