Guest User

Untitled

a guest
Jun 21st, 2018
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.89 KB | None | 0 0
  1. #!/bin/sh
  2. echo "Wpisz \n1 aby przetłumaczyć znaki alfanumeryczne na Morse'a lub wpisz \n2 aby przetłumaczyć z alfabetu Morse'a "
  3. read odp
  4.  
  5. case $odp in
  6. "1")
  7. echo "Podaj znaki alfanumeryczne rozdzielone spacja do przetlumaczenia"
  8. read text
  9. echo "$text"\ | \
  10.   sed -e {s/0/-----\ /g} -e {s/1/.----\ /g} -e {s/2/..---\ /g} -e {s/3/...--\ /g} -e {s/4/...-\ /g} -e {s/5/.....\ /g} \
  11.   -e {s/6/-....\ /g} -e {s/7/--...\ /g} -e {s/8/---..\ /g} -e {s/9/----.\ /g} \
  12.  | sed -e {s/c/-.-.\ /g} -e {s/b/-...\ /g} -e {s/f/..-.\ /g} -e {s/h/....\ /g} -e {s/j/.---\ /g} -e {s/l/.-..\ /g} \
  13.   -e {s/p/.--.\ /g} -e {s/q/--.-\ /g} -e {s/v/...-\ /g} -e {s/x/-..-\ /g} -e {s/y/-.--\ /g} -e {s/z/--..\ /g} \
  14.   | sed -e {s/w/.--\ /g} -e {s/d/-..\ /g} -e {s/g/--.\ /g} -e {s/k/-.-\ /g} \
  15.   -e {s/o/---\ /g} -e {s/r/.-.\ /g} -e {s/s/...\ /g} -e {s/u/..-\ /g} \
  16.   | sed -e {s/a/.-\ /g} -e {s/i/..\ /g} -e {s/m/--\ /g} -e {s/n/-.\ /g} \
  17.   | sed -e {s/e/.\ /g} -e {s/t/-\ /g}
  18. ;;
  19. "2")
  20. echo "Podaj znaki Morse'a rozdzielone spacja do przetlumaczenia"
  21. read text
  22. echo $text | grep -E -q [\-\.]{5,}[\-\.]  
  23. if [ "$?" -eq 0 ]  
  24. then
  25. echo "blad w znaku"
  26. else
  27. echo "$text"\  | tr . 0 | \
  28.   sed -e {s/0----\ /1/g} -e {s/00---\ /2/g} -e {s/000--\ /3/g} -e {s/000-\ /4/g} -e {s/00000\ /5/g} \
  29.   -e {s/-0000\ /6/g} -e {s/--000\ /7/g} -e {s/---00\ /8/g} -e {s/----0\ /9/g} -e {s/-----\ /0/g} \
  30.   | sed -e {s/-0-0\ /c/g} -e {s/-000\ /b/g} -e {s/00-0\ /f/g} -e {s/0000\ /h/g} -e {s/0---\ /j/g} -e {s/0-00\ /l/g} \
  31.   -e {s/0--0\ /p/g} -e {s/--0-\ /q/g} -e {s/000-\ /v/g} -e {s/-00-\ /x/g} -e {s/-0--\ /y/g} -e {s/--00\ /z/g} \
  32.   | sed -e {s/0--\ /w/g} -e {s/-00\ /d/g} -e {s/--0\ /g/g} -e {s/-0-\ /k/g} \
  33.   -e {s/---\ /o/g} -e {s/0-0\ /r/g} -e {s/000\ /s/g} -e {s/00-\ /u/g} \
  34.   | sed -e {s/0-\ /a/g} -e {s/00\ /i/g} -e {s/--\ /m/g} -e {s/-0\ /n/g} \
  35.   | sed -e {s/0\ /e/g} -e {s/-\ /t/g}
  36. fi
  37. ;;
  38. *)
  39. echo "Nieprawidlowa odpowiedz!"
  40. ;;
  41. esac
Advertisement
Add Comment
Please, Sign In to add comment