3

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

Маленькая помощь?

#!/bin/sh
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15

$DIALOG --title "Bulletin Board Entry" --clear \
        --inputbox "Enter Today's Very Important\n
employee information below:" 16 51 2> $tempfile

retval=$?

case $retval in
  0)
    echo "Input string is `cat $tempfile`";;
  1)
    echo "Cancel pressed.";;
  255)
    if test -s $tempfile ; then
  cat $tempfile
else
  echo "ESC pressed."
fi
;;
esac

2 ответа2

0

В качестве альтернативы dialog вы можете просто запустить редактор с временным файлом. Таким образом, каждый пользователь может даже использовать предпочитаемый им $EDITOR вместо dialog ограниченными возможностями. Многие приложения делают такие вещи, когда хотят ввода пользователя. В частности, системы управления версиями приходят мне на ум.

0

Используйте --editbox emptyfile вместо --inputbox . К сожалению, это не позволит вам передавать /dev/null вместо emptyfile , поэтому вам фактически придется создать пустой (временный) файл. Или файл, содержащий шаблон сообщения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .