2013-08-26 47 views
1

我想運行一個shell腳本。shell腳本:語法錯誤

的前兩行是像如下:

#!/bin/bash 
gr = (file1 file2 file3) 

然而,當我運行該腳本,我得到以下錯誤: fileName.sh:2:語法錯誤: 「(」 意外

我不習慣寫這種類型的腳本,但我讀了括號用於分組...

我不明白我做了什麼錯?

回答

3

嘗試這樣做來創建一個數組:

gr=(file1 file2 file3) 

在所有類型的變量賦值中都不允許有空格。

+0

我剛剛刪除了空格,但同樣的錯誤仍然存​​在... – bigTree

+1

@bigTree確保您正在運行'bash'。嘗試使用'bash script.sh',而不是用'sh script.sh'或'。/ script.sh'運行它。 – konsolebox

+0

@konsolebox我的不好,現在它的作品謝謝!你能告訴我有什麼區別嗎? (謝謝!) – bigTree

2

我試過了你的程序,我得到了同樣的錯誤。

[[email protected] ~]$ sh fileName.sh 
fileName.sh: line 2: syntax error near unexpected token `(' 
fileName.sh: line 2: `gr = (file1 file2 file3)' 

我只是改變了這樣的程序:

[[email protected] ~]$ cat fileName.sh 
#!/bin/bash 
gr=(file1 file2 file3) 

而且問題消失。

[[email protected] ~]$ vi fileName.sh