我有一个 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"'
嵌入"
变量内部。