添加示例

添加示例

示例 1。

添加到控制台效果很好

pic@pic:~/Desktop$ a="$(date +%s)"
pic@pic:~/Desktop$ b="$(date +%s)"
pic@pic:~/Desktop$ echo $[a+b]
2844184057
pic@pic:~/Desktop$

示例 2.

都是一样的,不过剧本

pic@pic:~/Desktop$ cat a.sh 
#!bin/bash

a="$(date +%s)"
b="$(date +%s)"

echo $[a+b]pic@pic:~/Desktop$ sh a.sh 
$[a+b]
pic@pic:~/Desktop$ 

为什么我会得到不同的结果?如何得到相同的结果?

编辑:

pic@pic:~/Desktop$ ls -l $(command -v sh)
lrwxrwxrwx 1 root root 4 sty 10  2014 /bin/sh -> dash
pic@pic:~/Desktop$ ./a.sh
bash: ./a.sh: Brak dostępu
pic@pic:~/Desktop$ 

编辑-1:

它就像跑步一样

pic@pic:~/Desktop$ . ./a.sh
2844188704
pic@pic:~/Desktop$

编辑-2:

不起作用

pic@pic:~/Desktop$ chmod +x a.sh
pic@pic:~/Desktop$ ./a.sh
bash: ./a.sh: bin/bash: zły interpreter: Nie ma takiego pliku ani katalogu
pic@pic:~/Desktop$ 

编辑-3:

已更正

pic@pic:~/Desktop$ cat a.sh 
#!/bin/bash

a="$(date +%s)"
b="$(date +%s)"

echo $[a+b]pic@pic:~/Desktop$ ./a.sh
2844189920
pic@pic:~/Desktop$ 

答案1

您的脚本缺少正确的标头,您的 shebang 行显示

#!bin/bash

那应该是

#!/bin/bash

当前目录的子目录 bin 中不太可能有 bash。因此,您在脚本中的系统上使用 sh (破折号?)

相关内容