Как перенаправить stdout и stderr в скрипте bash с помощью диалоговых окон?
504
coverflower
Для одного скрипта, перенаправляющего stdout и stderr в файл с этим:
./myscript.sh 2>&1 | tee -a out_file
работает отлично. Когда я пытаюсь таким же образом запустить скрипт, содержащий несколько диалоговых окон, созданных с помощью команды dialog (и вызывающих другие скрипты)
./main.sh 2>&1 | tee -a out_file
out_file содержит нежелательные символы из-за этих полей. Например:
#!/bin/bash # myscript.sh dialog --title "Title" \ --msgbox "Message Box" \ 30 120 date
генерирует с:
$ ./myscript.sh 2>&1 | tee -a myscript.out
несколько строк, похожих на эту:
[36m[44m [30m[40m[K[22;38H[39;49m(B[m[2;3H[30m[47mMessage Box[22;38H[39;49m(B[m
Как я могу получить stdout и stderr без этих символов (для основного и всех последующих сценариев)? Это было бы в примере вывода даты . Приятно было бы то, что пользователь ввел в поле ввода.
вы можете использовать tr, чтобы избавиться от него, как `tr -d 'ﮛ'`, так что, возможно, как` ./main.sh 2> & 1 | tr -d 'ﮛ' | tee -a out_file`
barlop 6 лет назад
0
Нам нужны детали сценариев и нежелательных персонажей. Пожалуйста, расширьте свой вопрос, чтобы включить их.
AFH 6 лет назад
0
Попробуйте использовать параметр dialog --stdout, `dialog --stdout ...`
Paulo 6 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
2
.profile в Mac OS X?
-
1
Приостановить все, кроме x задач, интенсивно использующих процессор
-
10
Как я могу найти в истории bash и повторно запустить команду?
-
-
2
Можно ли передать выходные данные одной команды двум другим командам?
-
8
Переименуйте группу файлов одной командой
-
2
Почему мой путь не обновляется * сейчас *?
-
5
Как удалить символическую ссылку на каталог?
-
8
Спаси меня от бессмысленного терминала
-
9
Как можно добавить номер строки и табуляцию к каждой строке текстового файла?
-
1
Когда я должен положить конфигурации в .bashrc против. .bash_profile?