日期:2014-05-16  浏览次数:20726 次

ubuntu下sh Filename和./Filename区别
一个国嵌视频上的代码:
#!/bin/bash
hello="var1"
echo $hello
function func1 {
local hello ="var2"
echo $hello
}
func1
echo $hello

在ubuntu下输入以下的命令,
这两个命令有和区别啊?新手求指点,谢谢了!
------解决方案--------------------
一般来说没有区别的,看具体执行脚本的是哪个终端。
#!/bin/bash  这个指定了bash
然后你再ls -l下系统下默认的sh它是具体指向的哪个终端,很可能它也是bash

------解决方案--------------------
大部分情况下是有区别的。
你用bash语法写的脚本,用sh去执行,多时候会出错。因为:
1、bash的某些语法sh不支持。
2、某些系统里面,sh是一个指向bash的软连接,没有问题。但是另外的很多操作系统里面不是这个样子的。