chmod +x 脚本名.sh 可快速添加执行权限;需区分授权对象(所有人/所有者/组),用 ls -l 验证权限位含 x,运行时必须写 ./script.sh 并确保 shebang 正确及换行符为 unix 格式。

直接用 chmod +x 脚本名.sh 就能快速添加执行权限,这是最常用也最有效的方法。关键不是“能不能加”,而是加给谁、怎么验证、以及加完后脚本本身是否真的能跑通。
一、基础操作:快速赋予执行权限
新建的 .sh 文件默认只有读写权限(如 -rw-r--r--),必须显式添加 x 才能运行:
-
所有人可执行:运行
chmod +x deploy.sh(等同于chmod a+x deploy.sh) -
仅当前用户可执行(更安全):运行
chmod u+x backup.sh -
所有者和组可执行:运行
chmod ug+x sync.sh
二、确认权限是否生效
执行完 chmod 后,别急着运行,先用 ls -l 看一眼:
- 输入
ls -l script.sh - 如果看到权限位中出现
x(例如-rwxr-xr-x或-rwxr--r--),说明已成功 - 若仍是
-rw-r--r--,说明命令没执行成功或路径不对
三、运行脚本的正确方式
权限加上了,还不能直接输 script.sh —— Linux 不会自动在当前目录搜索可执行文件:
- 必须用
./script.sh(前面加./表示“当前目录下的这个文件”) - 确保脚本第一行有正确的 shebang,比如
#!/bin/bash或#!/usr/bin/env bash - 如果提示
/bin/sh^M: bad interpreter,说明是 Windows 编辑保存的脚本,需转为 Unix 换行格式(可用dos2unix script.sh或 vim 中输入:set ff=unix)
四、权限误操作后的还原方法
不小心删了执行权限?或者想限制范围?用减号就能撤回:
- 移除所有人的执行权限:
chmod -x clean.sh - 只移除其他用户的执行权:
chmod o-x publish.sh - 重置为“所有者可读写、其余人只读”:
chmod 644 config.sh











