ubuntu下sh Filename和./Filename区别

whdugh 2013-12-31 02:58:18
一个国嵌视频上的代码:
#!/bin/bash
hello="var1"
echo $hello
function func1 {
local hello ="var2"
echo $hello
}
func1
echo $hello

在ubuntu下输入以下的命令,
这两个命令有和区别啊?新手求指点,谢谢了!
...全文
132 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhxianbin 2014-01-02
  • 打赏
  • 举报
回复
如果在脚本中设置环境变量,两者是有区别的,要在终端中使用 sh filename,./filename 退出后是不能在调用的终端中看到 filename 中设置的环境变量的
ljc007 2014-01-02
  • 打赏
  • 举报
回复
大部分情况下是有区别的。 你用bash语法写的脚本,用sh去执行,多时候会出错。因为: 1、bash的某些语法sh不支持。 2、某些系统里面,sh是一个指向bash的软连接,没有问题。但是另外的很多操作系统里面不是这个样子的。
xixi4216 2013-12-31
  • 打赏
  • 举报
回复
支持2楼,一般来说没有区别的。
帅得不敢出门 2013-12-31
  • 打赏
  • 举报
回复
一般来说没有区别的,看具体执行脚本的是哪个终端。 #!/bin/bash 这个指定了bash 然后你再ls -l下系统下默认的sh它是具体指向的哪个终端,很可能它也是bash
Vegertar 2013-12-31
  • 打赏
  • 举报
回复
ubuntu 的 sh 是dash吧

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧