Как поймать возврат каретки / строку в заявлении case

Я пробовал следующее безрезультатно и не мог найти никакой документации.

read Option case $Option in [1] ) echo "1" ;; [2] ) echo "2" ;; [$'\n'] ) echo "LF" ;; [0] ) exit ;; * ) echo "Invalid input" ;; esac 

Тем не менее, работает.

 $ x=" > " $ if [ "$x" = $'\n' ]; then echo "newline"; fi newline 

  • как сохранить настройки скрипта?
  • Как эта команда find использует «find ... -exec sh -c» ... «sh {} +» работает?
  • Расширение имени файла для сценария ожидания в bash
  • Ошибка при подсчете символов в файле
  • Сортировка файлов по наивысшему числу в имени файла
  • Динамическая переменная в скрипте KornShell
  • Простой сценарий bash для резервного копирования и удаления каталогов
  • Rsync удаляет файлы в старом каталоге?
  • 2 Solutions collect form web for “Как поймать возврат каретки / строку в заявлении case”

    Поскольку read только считывает одну строку ввода, sans newline, вы просто хотите проверить пустую строку:

     read Option case $Option in 1 ) echo "1" ;; 2 ) echo "2" ;; "" ) echo "LF" ;; 0 ) exit ;; * ) echo "Invalid input" ;; esac 

    [1] и 1 (и аналогично для других односимвольных классов) соответствуют тем же строкам, что и шаблоны.

    read разделит его. Сам пример дела работает.

     #read Option Option=' ' case "$Option" in [1] ) echo "1" ;; [2] ) echo "2" ;; [$'\n'] ) echo "LF" ;; [0] ) exit ;; * ) echo "Invalid input" ;; esac #Outputs: LF 
    Interesting Posts

    Asible, пытаясь найти способ заставить тайм-аут задачи на хосте, на котором он сейчас работает

    zsh автозавершение некоторых частей каталога

    Исправлено ли исправление shellshock bash базовыми инструментами командной строки, такими как echo и cat?

    Свободное дисковое пространство не правильно?

    Просмотр консольного вывода из задания Upstart без лог-файлов

    Как получить идентификатор окна из идентификатора процесса

    Открыть несколько файлов в папках с определенным шаблоном имени

    Безопасная доля в самбе не работает, почему?

    Есть ли команда, которая сообщит мне, нет ли активности экрана?

    Удалите файл с именем '

    Debian wheezy – зависание при выключении

    Как сортировать и присоединяться одновременно?

    Судо долго ждать пользователя Active Directory

    Объединение текстовых файлов на основе их имени файла

    `tar` с` find` с удалением исходного расширения файла

    Linux и Unix - лучшая ОС в мире.