运行Linux脚本需确保可执行权限并正确调用。1. 使用chmod +x script.sh添加权限;2. 通过./script.sh(推荐)、sh script.sh或source script.sh执行;3. 脚本首行应包含#!/bin/bash指定解释器;4. 常见问题包括权限不足、路径错误和换行符格式问题,可通过chmod、检查路径及dos2unix工具解决。规范书写与权限设置是关键。

在Linux中运行脚本,主要是通过执行.sh文件来完成自动化任务。要成功运行一个Shell脚本,需要确保文件有可执行权限,并使用正确的命令调用它。下面介绍几种常用的执行方式和注意事项。
1. 给脚本添加执行权限
在运行.sh文件之前,必须确保该文件具有执行权限。如果没有权限,系统会提示“Permission denied”。
使用chmod命令为脚本添加执行权限:
- chmod +x script.sh —— 给所有用户添加执行权限
- chmod u+x script.sh —— 仅给文件所有者添加执行权限
2. 执行脚本的几种方法
添加权限后,可以通过以下几种方式运行脚本:
方法一:使用路径执行(推荐)
- ./script.sh —— 当前目录下的脚本
- /home/user/myscript.sh —— 使用绝对路径执行
注意:前面的./不能省略,否则系统可能找不到命令。
方法二:通过解释器显式调用
- sh script.sh —— 使用sh命令运行脚本
- bash script.sh —— 使用bash解释器执行
这种方式不需要执行权限,但建议仍保持权限设置规范。
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统
方法三:使用source或.命令在当前shell中执行
- source script.sh
- . script.sh
这种执行方式不会开启子shell,脚本中的变量修改会影响当前shell环境,适合用于配置文件加载。
3. 脚本首行:shebang的作用
一个规范的Shell脚本第一行通常是:
#!/bin/bash
或
#!/bin/sh
这行叫shebang,用来指定解释器。系统会根据这一行决定用哪个程序来运行脚本。如果没写,就要手动指定解释器(如bash script.sh)。
4. 常见问题与解决
问题1:Permission denied
解决:运行chmod +x script.sh添加执行权限。
问题2:No such file or directory
可能原因:脚本路径写错,或换行符是Windows格式(CRLF)。
解决:使用dos2unix script.sh转换格式。
问题3:Command not found
检查shebang是否正确,或者是否把bash写成了其他错误名称。
基本上就这些。只要权限正确、路径无误、解释器明确,Linux运行.sh脚本并不复杂。关键是养成规范写脚本的习惯。









