Как сделать так, чтобы окно консоли появлялось только в том случае, если выполняемая мной команда производит вывод? [закрыто]

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

В настоящее время всегда появляется всплывающее окно, и меня беспокоят случайные пустые терминалы, которые появляются и исчезают. Вот команда, которую я запускаю автоматически каждые 30 минут или около того:

ps -e | grep -i unison || xterm -e 'unison -auto -perms=0 -terse Local_Sync'

Кто-нибудь может придумать лучший способ сделать это?

2
задан 13 December 2017 в 20:08

2 ответа

Вам, вероятно, придется нарисовать его в сценарии, где вы можете передать вывод в переменную, проверить, есть ли что-нибудь в этом var, а затем отобразить его в xterm, если у него есть содержимое.

0
ответ дан 13 December 2017 в 20:08

Я согласен с Оли, было бы гораздо проще сделать в сценарии, который вы можете сделать, чтобы задание cron запускалось каждые 30 минут, см.

man crontab
.
0
ответ дан 13 December 2017 в 20:08

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

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