Рейтинг:0

'cd' не работает со значением, полученным из оператора 'read' в сценарии оболочки

флаг mq

Я написал сценарий оболочки, где я запрашиваю ввод от пользователя:

read -p "Пожалуйста, введите значение" ЗНАЧЕНИЕ

Но когда я пытаюсь CD в $ЗНАЧЕНИЕ, получен от читать, я получаю сообщение об ошибке:

bash: cd: ~/omg/: Нет такого файла или каталога

Используя как сценарий оболочки, так и терминал, если я получу путь из читать заявление, то CD терпит неудачу:

~$ read -p "ВВЕДИТЕ ПУТЬ?!: " ОМГ
ВВЕДИТЕ ПУТЬ?!: ~/omg/
~$ компакт-диск $OMG
bash: cd: ~/omg/: Нет такого файла или каталога

Однако, если я назначу тот же самый текст переменной, то CD команда работает:

~$ х=~/мг/
~$ кд $х
~/о боже $

Почему это происходит?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.