Выходные данные ssss-combine не могут быть захвачены

Выходные данные ssss-combine не могут быть захвачены

Я пытаюсь перенаправить вывод ssss-combineв файл, но пока безуспешно.

Я попробовал основные действия: > file, 2>&1 > fileи tee file, но они всегда отображаются на экране, а в файл ничего не помещается.

решение1

Хотя вы не указалиточныйкоманду, которую вы выполняете, и поэтому трудно сказать наверняка, я предполагаю, что ваша команда выводит данные в стандартный дескриптор файла ошибок (он же stderr), а не в stdout.

Перенаправления перенаправляют > fileтолько | tee filestdout, но не stderr.

2>&1 > fileне делает ни то, что вы ищете. Сначала он перенаправляет ошибку туда, где в данный момент находится stdout, то есть в ваш эмулятор терминала, изатемперенаправляет stdout (и только stdout, а не stderr) в файл.

Вы можете использовать 2>fileдля перенаправления stderr или поменять местами два перенаправления в предыдущем примере: >file 2>&1для перенаправления обоих потоков в один и тот же файл. Порядок важен, так как они оцениваются слева направо. На этот раз вы сначала перенаправляете вывод в файл, а затем ошибку в текущее местоположение вывода (которое уже является этим файлом).

решение2

Хитрость заключается в использовании script -c 'ssss-combine ...' output.txt(потому что ssss не выводит на stdout)

Связанный контент