Проблема сложнее, чем предполагается. Начните со сценария:
tput smcup
clear
dialog --yesno "Do you want to continue?" 0 0
rc=$?
clear
tput rmcup
if [ "${rc}" == "0" ]; then
echo Yes
else
echo No
fi
Существует только один альтернативный экран (и вы не можете обращаться с ним как со стеком). tput smcup
(технически "запустить режим адресации курсора") часто используется в xterm и его аналогах для переключения на альтернативный экран. На самом деле в xterm для этой цели реализована не одна управляющая последовательность (см. Почему экран не очищается при запуске vi?), и некоторые из них не распознаются аналогами. В одном из комментариев говорится, что MobaXterm является настоящим терминалом в данном случае. Этот терминал основан на (использует код из) PuTTY, который, как оказалось, обрабатывает код 1049 в terminfo MobaXterm.
Итак...
rmcup
, переключающая обратно на обычный экран, содержимое которого будет таким же, как и до начала сценарияtput rmcup
. Это просит эмулятор терминала переключиться обратно с альтернативного экрана. Поскольку терминал уже находится в нормальном режиме, последняя строка может быть интерпретирована одним из (по крайней мере) двух способов:
В данном случае, похоже, что последнее: часть выполняется. PuTTY (и, при быстрой проверке, xterm) восстанавливают позицию курсора с первого использования tput smcup
, потому что подсказка находится в середине экрана (а не вверху, где ее оставила бы clear
). ОП заметил пробел, потому что в этом окне уже было выполнено несколько команд до запуска скрипта - курсор вернулся в исходное положение, но команды исчезли из-за clear
перед tput rmcup
.
He logrado instalar la aplicación ignorando las dependencias y funciona. Pero había instalado el desarrollador libXScrnSaver -.
zypper addrepo https://download.opensuse.org/update/leap/42.3/oss//openSUSE:Leap:42.3:Update.repo
zypper ref
zypper in libXScrnSaver-devel
zypper in slack-3.0.5-0.1.fc21.x86_64.rpm*
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: nothing provides libXScrnSaver needed by slack-3.0.5-0.1.fc21.x86_64
Solution 1: do not install slack-3.0.5-0.1.fc21.x86_64
Solution 2: break slack-3.0.5-0.1.fc21.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or cancel [1/2/c] (c): 2