Разделите шум STDOUT от ncurses

Существует один инструмент, который идет вне rsync, то, которое лично я думаю, является одним из лучших инструментов синхронизации там, и это - Унисон.

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

При синхронизации папок документов, однако, легко покончили rsync или unison. другая опция использовала бы git репозитории для не только проекты, но и вещи как файлы конфигурации и другие документы. Так как это - децентрализованная система, Вам не нужны серверы для синхронизации к и т.д.

Частично синхронизация Ваш $HOME каталог не должен быть никакой проблемой, просто высматривать вещи как конфигурации Gnome и т.д. В сущности необходимо тщательно решить, что синхронизировать и что нет.

4
23.05.2017, 15:39
1 ответ

Я не думаю, что Вы хотите, возможно. Посмотрите этот названный поток суперпользователя: Как я отсоединяю процесс от Терминала, полностью?.

Я думаю, что у Вас есть по существу 3 опции.

Опция № 1

Запустите скрипты, которые загрязняют Вас терминал, таким образом, что они выполняются как так:

nohup somescript &> /dev/null &

Который должен выполнить их STDOUT & STDIN к/dev/null, фон их, и разъединить их от сигналов Вашего терминала, если необходимо закрыть его.

Опция № 2

Используйте что-то как screen. Благодаря @StephaneChazelas в комментариях действительно кажется, что существует screen пакеты, доступные для Debian на Вашей архитектуре.

Опция № 3

Если Вы не заботитесь, приостанавливаете ли Вы временно процессы, которые загрязняют STDOUT Вашего терминала, можно использовать эту установку: stty tostop. Это имеет эффект того, чтобы мешать этим процессам отправить их STDOUT на Ваш терминал. Когда Вы сделаны, можно повторно включить его с командой stty -nostop. Я нашел это в Электроинструментах Unix 3-й книгой выпуска.

пример

Вот мое приложение в качестве примера, которое загрязняет STDOUT моего терминала:

$ while [ 1 ];do echo hi 2>&1;sleep 5;done &

Это повторяет "привет" каждые 5 секунд как так:

[1] 30913
hi
$ hi
hi
hi
hi

Теперь, когда я работаю stty tostop:

$ stty tostop
$ date
Thu May  9 14:22:44 EDT 2013
$ date
Thu May  9 14:23:52 EDT 2013

Проблема с этим подходом состоит в том, что другой процесс останавливается:

$ jobs
[1]+  Stopped                 while [ 1 ]; do
    echo hi 2>&1; sleep 5;
done

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

$ stty -tostop
$ jobs
[1]+  Stopped                 while [ 1 ]; do
    echo hi 2>&1; sleep 5;
done

$ fg
while [ 1 ]; do
    echo hi 2>&1; sleep 5;
done
hi
^Z

[1]+  Stopped                 while [ 1 ]; do
    echo hi 2>&1; sleep 5;
done
$ bg
[1]+ while [ 1 ]; do
    echo hi 2>&1; sleep 5;
done &
$ hi
hi
hi
hi
hi

Вышеупомянутые шоу мое выполнение stty -tostop, затем выполнение команды fg к переднему плану while ... процесс, который загрязнял мой STDOUT, затем Ctrl+Z, для остановки while ... процесс, затем используйте фоновую команду, bg.

Дополнительные идеи

Проверьте инструменты предложений на них U&L Q&As

Существуют обширные списки инструментов и возможных путей для Вас для испытания как альтернативы screen. Возможно, используйте tmux или повторно подключите процессы, которые загрязняют Ваш STDOUT к другому терминальному использованию reptyr.

3
27.01.2020, 20:58
  • 1
    : не поможет, поскольку у меня нет доступа к тем, которые загрязняют Опцию 2 процессов: Имейте перекрестную компиляцию задач screen для ARM –  GeekFactory 09.05.2013, 07:14
  • 2
    Существуют screen пакеты для arm в Debian и вероятно большинстве других дистрибутивов, поддерживающих руку. –  Stéphane Chazelas 09.05.2013, 16:11
  • 3
    Извините моя ошибка. Даже screen команда не помогает. Я попробовал это, я запустил процесс в bg и затем открыл экранную сессию. Даже затем на новой экранной сессии я вижу загрязнение –  GeekFactory 10.05.2013, 07:32
  • 4
    , Как Вы запускались screen сессии? Это может иметь значение. –  slm♦ 10.05.2013, 08:03

Теги

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