На этот вопрос уже есть ответ здесь:
Я искал способ преобразовать строковое значение из верхнего регистра в нижний регистр. Все результаты поиска показывают подходы к использованию команды tr
.
Проблема с командой tr
заключается в том, что я могу получить результат только тогда, когда использую команду с оператором echo. Например:
y="HELLO"
echo $y| tr '[:upper:]' '[:lower:]'
Вышеприведенное работает и приводит к «привет», но мне нужно присвоить результат переменной, как показано ниже:
y="HELLO"
val=$y| tr '[:upper:]' '[:lower:]'
string=$val world
При присвоении значения, как указано выше, это дает мне пустой результат.
PS :Моя версия Bash 3.1.17