我試圖在 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
是你的字串變數;如果你想使用一個句子,有兩種方法:- 使用反斜線(
\
例如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