Я пытаюсь передать строковую переменную внутри скрипта bash, но в комментарий в скрипте.
Я подумал, что в командной строке можно передать это так:
./script.sh specific_string_variable
И затем внутри моего bash-скрипта строка комментария будет обновлена следующим образом:
#heres the comment line with this variable inserted: specific_string_variable
Это возможно?
Извините, если это очевидно, я новичок. Спасибо :)
решение1
Вам просто нужно добавить следующие строки в свой скрипт:
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
Объяснение :
$1
ваша строковая переменная; если вы хотите использовать предложение, есть 2 способа:- используя обратную косую черту
\
, напримерtest\ magic\ beautiful
(\
скажем,пространство — это персонаж) - используя двойные кавычки,
"
например"test magic beautiful"
(внутри""
, все рассматривается какхарактер)
- используя обратную косую черту
>>
добавьте текст в конец вашего сценария, тогда как простой>
способ сотрет ваш сценарий и напишет текст- комментарий должен быть заключен в двойные кавычки
"
Вот скрипт до и после выполнения:
damadam@Pc:~$ cat script.sh
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
damadam@Pc:~$ ./script.sh test
damadam@Pc:~$ cat script.sh
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
#heres the comment line with this variable inserted: test
и со строкой из 2 слов:
damadam@Pc:~$ ./script.sh test\ magic
damadam@Pc:~$ cat script.sh
echo "#heres the comment line with this variable inserted:" $1 >> script.sh
#heres the comment line with this variable inserted: test
#heres the comment line with this variable inserted: test magic