array declaration of shellscript doesnot work in s

2019-08-28 02:49发布

I have created a shell script named "script.sh" which reads an arrays elements and prints it on terminal. The script is as follows:

 arr=("hello" "world")
for i in ${arr[@]}
do
echo  $i;
done

It gives expected output i.e 'Hello World' on executing it in terminal, but if I schedule the same script in crontab jobs to get executed automatically every minute and store the output in another file,the job fails and gives

/home/vikash/script.sh: 1: Syntax error: "(" unexpected error.

The crontab job to execute the script every minute and store the output in another file is as follows:

* * * * * $HOME/script.sh >> $HOME/output.log 2>&1

How to use array in this scenario?? please help.

2条回答
聊天终结者
2楼-- · 2019-08-28 03:16

if this question is still valid, just run your script with

bash script.sh

I also tried it with sh somehow it is not working with sh but with bash it suns smooth.

查看更多
该账号已被封号
3楼-- · 2019-08-28 03:21

Add this before the first line of your script:

#!/bin/bash
查看更多
登录 后发表回答