Объединение стандартного вывода и подстановка его в таблицу

Проблема заключалась в неправильной конфигурации BIOS.

Решение(для моей материнской платы Z170 -D3H ): перейдите в BIOS > Периферийные устройства > Конфигурация SATA и включите здесь . ] Опция Hot Plug для каждого порта SATA. Затем сохраните настройки и перезагрузите компьютер.

Теперь все работает корректно!

0
03.07.2019, 01:42
2 ответа

Использование именованного канала для создания дополнительного канала для данных между teeиtr:

$ mkfifo pipe
$ tee pipe <file | paste - <( tr '[:lower:]' '[:upper:]' <pipe )
a       A
b       B
c       C

Альтернативный вариант (, но не такой красивый ), перемещение trслева от|:

$ mkfifo pipe
$ tee >( tr '[:lower:]' '[:upper:]' >pipe ) <file | paste - pipe

Вам нужен дополнительный именованный канал, чтобы иметь возможность передавать данные, преобразованные с помощью trв paste. Утилита pasteдолжна считывать два потока: исходные данные и преобразованные данные. Один из них может быть стандартным потоком, а другой должен поступать либо из исходного файла (, считывающего файл во второй раз ), либо из именованного канала, как показано выше.

2
28.01.2020, 02:22

простое решение с использованием awk

awk ' { print $0, toupper($0) ; } ' /tmp/tmp1.txt

или

( echo a ; echo b ; echo c ;  ) | awk ' { print $0, toupper($0) ; } '

или с помощью именованного конвейера или fifo

( echo a ; echo b ; echo c ) |
(
  D=$(mktemp -d) ;
  (
    cd $D ;
    mkfifo fifo_a fifo_b ;
    paste fifo_b <( tr '[:lower:]' '[:upper:]' < fifo_a ) &
    tee  fifo_a  > fifo_b  ;
    wait ;
    rm fifo_a fifo_b
  ) ;
  rmdir $D
)
1
28.01.2020, 02:22

Теги

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