2013-10-27 3 views
1

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

echo "Select the Employee Type:" 
echo "1- Salaried Employee" 
echo "2- Hourly Employee" 
echo "3- Commission Employee" 
echo -en "Enter Selection: " 
read choice 

case $choice in 
     "1") 
    Type="Salaried Employee" 
     break 
     ;; 
     "2") 
    Type = "Hourly Employee" 
     break 
     ;; 
     "3") 
    Type ="Commission Employee" 
     break 
     ;; 
      *) echo "Error: Please enter a choice between 1 - 7" 
      echo -en "Hit [Enter] to return..." 
      read 
      ;; 
    esac 

    `if [ `count_lines "^${Name},"` -ne 0 ]             
    then 
     echo "Error: Entry already exist!!" 
    else 
     confirm "Are you sure you want to add the entry?[y/n]" 
     if [ $? -ne 0 ] 
     then 
      echo "Previous entry not updated!"   
     else 
      echo "Record is updated with new employee!!" 
      echo "${Name},${Job},${Department},${Salary},${Type}" >> $PAYROLL 
     fi  
    fi` 
+1

ли 'символы действительно есть в сценарии, или вы просто добавить их, чтобы попытаться сделать это корректно отображаться на Stackoverflow? –

+0

Пожалуйста, дайте нам простой, но полный сценарий. Вы определили несколько переменных (** $ Name **, ** $ Job **, ...) и функции (** count_lines **), которые не определены в вашем скрипте. И я не понимаю конкретного вопроса ... – EverythingRightPlace

+0

Другая переменная работает, пока я не добавила окончательный вариант «EMployee Type» – Alien

ответ

0

Несколько вещей неправильно с этим сценарием:

  • В конце в случае альтернативы, есть только ;; - нет break (который выпрыгивает из do/for/while)
  • Существует дополнительный обратный ход перед if и после fi, вызывающий синтаксическую ошибку; удалить их
  • Там должно быть пробелов вокруг = не assigments как Type = "Hourly Employee" и Type ="Commission Employee"
+0

привет спасибо, что указала это. Я отредактировал его. , но похоже, что я по-прежнему не может сохранить выбор пользователя в файле database.txt – Alien

+0

Для правильного диагноза вам нужно точно сказать, что такое ваш скрипт, что вы вводите, и какие сообщения вы ожидаете, а также какие сообщения и ошибки, которые выводит оболочка. 't напечатайте его, вырежьте и вставьте его. – Jens

Смежные вопросы