Advertisement
Guest User

Untitled

a guest
May 19th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.53 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ERR_PATH="$HOME/lab1_err"
  4. ERR_MSG="An error occured! See $ERR_PATH for details"
  5.  
  6. while true
  7. do
  8.     echo '1. Напечатать имя текущего каталога'
  9.     echo '2. Сменить текущий каталог'
  10.     echo '3. Напечатать содержимое текущего каталога'
  11.     echo '4. Создать косвенную (символьную) ссылку на файл'
  12.     echo '5. Выполнить введенную команду'
  13.     echo '6. Выйти из программы'
  14.     echo 'Выберите пункт меню:'
  15.  
  16.     read menu || break
  17.  
  18.     echo
  19.     case "$menu" in
  20.         1)
  21.             echo $(basename "$PWD")  2>>"$ERR_PATH" || echo $ERR_MSG 1>&2
  22.         ;;
  23.         2)
  24.         echo 'Введите путь к каталогу'
  25.         read dir_name
  26.             cd "$dir_name" 2>> "$ERR_PATH" || echo $ERR_MSG 1>&2
  27.         ;;
  28.         3)
  29.             ls 2>>"$ERR_PATH" || echo 'Unknown error!' 1>&2
  30.         ;;
  31.         4)
  32.             echo 'Введите путь к исходному файлу:'
  33.             read file_name
  34.             echo 'Введите путь к символьной ссылке:'
  35.             read link_name
  36.             ln -s "$file_name" "$link_name" 2>>"$ERR_PATH" || echo $ERR_MSG 1>&2
  37.         ;;
  38.         5)
  39.             echo 'Введите команду'
  40.             read command_name
  41.         echo $($command_name 2>>"$ERR_PATH" || echo $ERR_MSG 1>&2)
  42.         ;;
  43.     6)
  44.             exit 0
  45.     esac
  46.     echo
  47.  
  48. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement