Возникли проблемы с использованием сценариев оболочки

Я пытаюсь изучить основы, и у меня возникла проблема с моим скриптом, подсчитывающим символы ввода пользователя. Вот мой сценарий, может кто-нибудь указать, где я ошибся, пожалуйста?

#!/bin/bash echo "Enter a word!" read INPUT_STRING len= echo $INPUT_STRING | wc -c echo "Your character length is " $len exit 

  • конкатенация строк на основе первого символа следующей строки
  • Определение функции оболочки: почему есть место после открытия скобки?
  • Можно ли заменить «затем» на скобки?
  • Проблемы копирования файлов с пробелами внутри имени файла в сценарии bash
  • Как переписать многострочный путь в однострочный относительный путь
  • Как обрабатывать подкоманду в сценарии оболочки?
  • Как работает синтаксис «$ {foo ## *.}» Для получения расширений файлов?
  • помощь в создании sh
  • 2 Solutions collect form web for “Возникли проблемы с использованием сценариев оболочки”

    каждое начало тяжелое:

     #!/bin/bash read INPUT echo $INPUT len=$(echo -n "$INPUT" | LC_ALL=C.UTF-8 wc -m) echo $len 

    в частности, не должно быть пространства, окружающего = и отдельная команда должна быть заключена внутри $(...) . Кроме того, вы можете написать свои переменные в кавычках " с использованием этого синтаксиса "${INPUT}" , это гарантирует, что переменная не будет случайно объединена с последующим и может содержать специальные символы (например, новые строки \n ).

    Я думаю, что лучше было бы использовать

     len=${#INPUT_STRING} 

    так как в противном случае будет учитываться и конец строки, добавленный эхом. Если это не то, что вы хотите.

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