вывод печати двух команд к тому же терминалу

Я использую Ubuntu 16.04.2, у меня есть значок на моем рабочем столе, который связывается со сценарием в моем $HOME/bin каталог. Этот сценарий использует два сценария в $HOME/bin каталог. Это открывает терминал и печатает выходной сценарий один. Затем это открывает второй терминал и печатает вывод сценария два.

Я хотел бы, чтобы это распечатало все данные ко всего одному терминалу. Конечный продукт должен быть то, что, когда я нажимаю свой значок на рабочем столе, все данные будут распечатаны ко всего одному терминалу.

Большое спасибо за Ваши предложения

#!/bin/bash
gnome-terminal -e "bash -c $HOME/bin/bin_old/bk_up;bash" && gnome-terminal -e "bash -c $HOME/bin/bin_old/win_bkp;bash"
2
задан 9 March 2017 в 16:59

2 ответа

Со значительной справкой от Ricardo Rodrigues. Вот решение, которое лучше всего удовлетворяет тому, чего я пытаюсь достигнуть. Если первая часть кода будет успешна затем, то вторая часть кода выполнится. Если это не будет успешно затем, то окно терминала откроет сообщение мне, где найти детали ошибок. Если вторая часть кода будет успешна затем, то я буду знать наверняка, что моя система была сохранена локально и также поддержана до удаленной системы и затем завершает работу локально. Однако, если будут ошибки, то это откроет окно терминала и скажет мне, где найти детали ошибок. Поскольку Вы видите, что я бросил пытаться иметь все дисплей в единственном раскрывающемся окне терминала. Это, кажется, сохраняет это простым для меня. Теперь, когда я нажимаю свой значок на рабочем столе или система скопирует к локальной и удаленной системе и затем закроется, или я получу сообщение об ошибке во всплывающем терминале.

#!/bin/bash
if bk_up 2> $HOME/local_errors     # backup to local directory
then
    if win_bkp 2> $HOME/remote_errors  # backup to remote system
    then
        shutdown now
        exit
    else
        echo "echo Remote errors. Check remote_errors file" > $HOME/warn2
        chmod ugo+x $HOME/warn2 # needs to be executable for gnome-termial to work.
        gnome-terminal -e "bash -c $HOME/warn2;bash"
        exit
    fi
else
   echo "echo Local errors. Check local_errors file" > $HOME/warn1
   chmod ugo+x $HOME/warn1  # need to be executable for gnome-terminal to work.
   gnome-terminal -e "bash -c $HOME/warn1;bash"
   exit
   exit
fi
0
ответ дан 2 December 2019 в 02:15

Вместо того, чтобы открыть второй терминал гнома просто выполняют две команды в первой.

#!/bin/bash
gnome-terminal -e "bash -c $HOME/bin/bin_old/bk_up;$HOME/bin/bin_old/win_bkp;bash"

РЕДАКТИРОВАНИЕ

Из того, что был обсужден в комментариях, что хочет Richard, является чем-то вроде этого:

#!/bin/bash
$HOME/bin/bin_old/bk_up
if [ $? -eq 0 ]; then
    $HOME/bin/bin_old/win_bkp
fi

В основном это запускает первый скрипт и если выполнения успешно (не возвращая ошибки) это запускает второй скрипт.

4
ответ дан 2 December 2019 в 02:15

Другие вопросы по тегам:

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