linux运行文件命令前加
linux运行文件命令前加详细介绍
在 Linux 系统中,运行文件前添加的命令或符号通常与文件类型、执行权限、操作场景有关。以下是几种常见的 “前缀” 及其用途:
1.
./(当前目录路径)
- 用途:明确指定在当前目录中运行文件(尤其是可执行文件或脚本)。
- 场景:当文件不在系统默认搜索路径(如
/usr/bin)中时,需用./指定路径。 - 示例:bash
./program./script.sh
- 注意:若提示 “权限不足”,需先用
chmod +x filename赋予执行权限。
2.
sudo(以管理员权限运行)
- 用途:以超级用户(root)权限运行命令或文件,适用于需要系统级操作的场景(如修改系统文件、安装软件)。
- 场景:执行需要高权限的可执行文件或脚本。
- 示例:bash
./install.sh/usr/local/bin/tool
- 注意:使用前需确保当前用户属于
sudo组,执行时需输入用户密码。
3.
解释器名称(如 bash、python、sh 等)
- 用途:直接用指定的解释器运行脚本文件(即使脚本没有执行权限)。
- 场景:脚本文件未设置可执行权限,或需要强制使用特定解释器。
- 示例:bash
script.shpython3 app.py
script.sh
- 注意:脚本第一行的 “shebang”(如
#!/bin/bash)会指定默认解释器,但若直接用解释器名称运行,会覆盖 shebang 的设置。
4.
绝对路径或相对路径
- 用途:直接指定文件的完整路径(代替
./),适用于文件不在当前目录的情况。 - 示例:bash
/home/user/tools/run.sh/scripts/job.sh
5.
其他特殊场景
env(环境变量运行):bash/usr/local/bin: ./programnohup(后台运行并忽略挂断信号):bash./server
总结:常用前缀对比
| 前缀 | 作用场景 | 示例 |
|---|---|---|
./ |
当前目录下的可执行文件 / 脚本 | ./app |
sudo |
需要管理员权限的操作 | sudo ./install |
bash/sh |
用指定解释器运行脚本(无执行权限) | bash script.sh |
| 路径 | 指定非当前目录的文件 | /opt/tools/tool 或 ../file |
根据文件类型和需求选择合适的前缀即可。如果是普通可执行文件,通常用 ./ 或路径;如需权限,加 sudo;脚本文件可直接用解释器名称运行。