bash脚本中的双引号问题

bash脚本中的双引号问题

我有一个 shell 脚本,我正在尝试开始工作。我需要以某种方式输出,而且我知道我只是没有正确转义字符。

脚本:

#!/bin/bash
set -x
DATE=$(date +%Y-%m-%d-%M)
ELEMENTS="ele1,ele2,ele3"
TOPIC="dogs cats"
FILE="./$DATE.csv"
COMMAND="python /home/script.py"
$COMMAND $ELEMENTS "$TOPIC" | tee -a $FILE

当我运行它时,终端中的设置会发生什么:

++ date +%Y-%m-%d-%M
+ DATE=2016-02-01-21
+ ELEMENTS=a list of elements
+ TOPIC='dogs cats'
+ FILE=./2016-02-01-21.csv
+ COMMAND='python /home/script.py'
+ python /home/script.py ele1,ele2,ele3 'dogs cats'
+ tee -a ./2016-02-01-21.csv

我需要的是“狗猫”与“狗猫”。 python 命令需要双引号来表示多字字符串。

这是在树莓派上运行的喘息声。

答案1

改变

TOPIC="dogs cats"

TOPIC='"dogs cats"'

嵌入"变量内部。

相关内容