Предполагая, что имя моего сценария myscript.sh
и мой текущий каталог /Users/scripts/
Я пытаюсь сделать следующее:кот файл в переменную
localScript=$(cat ./myscript.sh)
Я получаю следующее сообщение об ошибке:
#!/bin/sh not found
Я не могу понять, как это сделать, но я полагаю, что он не работает, потому что $()
создает подоболочку с другим pwd и, следовательно, не может найти мой файл.
Я также пытался использовать различные комбинации pwd
, но у меня также возникли проблемы с этим методом.
Ваша одна строчка здесь прекрасна. Ошибка в другом месте. Вы запускаете localScript = $ (cat ./myscript.sh) в терминале? Из сценария? Вы уверены, что это 'localScript = $ (cat ./myscript.sh)', который выдает эту ошибку? $() будет иметь тот же рабочий каталог, что и ваш запуск. – nos
Запустите 'type cat' и посмотрите, что вы получаете. – anubhava
@nos Я пробовал делать то же самое назначение переменных с терминала, а также включил его в свой скрипт и запускал скрипт с терминала. –