我的 bash 脚本中有用于备份我的 elasticsearch 的功能
backup () {
if curator_cli --timeout 600 --host 192.168.2.11 --port 9200 snapshot --repository $SNAPSHOT_NAME --name snapshot-$DATE --filter_list "{\"filtertype\":\"pattern\",\"kind\":\"regex\",\"value\":\".*\"}"
then
echo backup done
else
echo backup failed
}
但是当我启动这个脚本时,它会打印错误
./elasticsearch_backup.sh
./elasticsearch_backup.sh: line 21: syntax error near unexpected token `}'
./elasticsearch_backup.sh: line 21: `}'
那么如何在bash函数中使用花括号?
答案 0 :(得分:0)
if
语句必须以 fi
结束:
backup () {
if curator_cli --timeout 600 --host 192.168.2.11 --port 9200 snapshot --repository $SNAPSHOT_NAME --name snapshot-$DATE --filter_list "{\"filtertype\":\"pattern\",\"kind\":\"regex\",\"value\":\".*\"}"
then
echo backup done
else
echo backup failed
fi
}