用bash写一个文件

S1s*_*hus 4 bash

我只需要写

"echo" t${count} = "$"t${count}"
Run Code Online (Sandbox Code Playgroud)

到一个文本文件,包括所有的所以输出将是这样的:

echo "  t1  = $t1"
Run Code Online (Sandbox Code Playgroud)

"就像他们一样.所以我试过:

count=1
saveIFS="$IFS"
IFS=$'\n'
array=($(<TEST.txt))
IFS="$saveIFS"
for i in "${array[@]}"
do
echo "echo" t${count} = "$"t${count}""
(( count++ ))
done >> long1.txt
Run Code Online (Sandbox Code Playgroud)

对此的变化如:

echo "echo" """"" t${count} = "$"t${count}""
Run Code Online (Sandbox Code Playgroud)

但我想包装"双重"只适用于变量.

想法?

fal*_*tro 10

实际上,对于变量,双引号没有包装,第一个引用开始,第二个引用结束引用的字符串.然而,您可以根据需要连接字符串,因此"$"t${count}""实际上相当于"$"t${count},以引用的$ -sign开头,后跟't',后跟count-variable.

回到你的问题,得到一个",你可以把它放在一个文字字符串(用单引号括起来),就像这样echo '"my string"',注意虽然变量没有在文字字符串中替换.或者你可以逃避它,就像这样echo "\"my string\"",将文字"放在字符串中,不会终止它.