在以前的问题中,建议我执行以下命令:
sudo bash start-dfs.sh
为什么不
sudo start-dfs.sh
?我的意思是,有什么区别bash
?
任何(已解释)语言的脚本(例如bash
或python
)都需要由相应语言的解释器“解释”。
在Linux上,这可以通过不同的方式完成:
通过在运行脚本的命令中包含语言,可以“要求”解释器运行脚本:
<language> <script>
或在您的示例中:
sudo bash start-dfs.sh
该脚本是可执行的,并且具有“询问”解释器本身的权限以在脚本中运行代码。从您的示例:
sudo start-dfs.sh
在这种情况下,脚本必须以shebang开头,否则就没有信息要调用的解释器,例如:
#!/bin/bash
或者:
#!/usr/bin/env python
.sh
,.py
等)清楚说明了脚本的类型,但与Windows不同,脚本的执行在脚本执行中没有任何作用。本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句