【发布时间】:2021-06-23 07:34:28
【问题描述】:
我有下一个 Kubernetes cronjob 规范:
containers:
- args:
- -c
- |
export NLS_LANG=AMERICAN_AMERICA.UTF8 ;
echo "Exporting addresses" ;
sqlplus bta/$ORACLE_PASSWORD@//10.203.0.34/bta @adm_address_export.sql > /dev/null ;
if [[ ! -f address.tsv ]]; echo 'File "address.tsv" is not there, aborting.'; echo $? ; then exit 0; fi ;
echo "Ready to import addresses" ;
如果 address.tsv 之前不是由命令创建的,我希望此作业失败。但由于某种原因,如果文件存在,它也会失败。
我在这里做错了什么?
【问题讨论】:
-
then 应该紧跟在 if [[..]] 之后
-
在你的 shell 代码中添加一个 shebang 并粘贴到 shellcheck,net
-
@RamanSailopal 您的回答有效,谢谢!
-
@Jetchisel 感谢您的帮助。那只检查语法,看起来没问题。
-
help if应该打印if语句的语法。
标签: bash kubernetes kubernetes-cronjob