如何在 Bash 中获取当前脚本执行的路径70
在 Bash 脚本中,获取当前脚本执行的路径是一个常见的操作。这对于需要操作与脚本相关的文件或资源时非常有用。
方法 1:使用 $0 变量
最简单的方法是使用 $0 变量。它包含当前正在执行的脚本的绝对路径。```bash
#!/bin/bash
echo "当前脚本路径:$0"
```
输出:```
当前脚本路径:/path/to/
```
方法 2:使用 readlink -f
readlink -f 命令可用于获取文件的绝对路径,包括符号链接。这可以解决 $0 变量在处理符号链接时出现的问题。```bash
#!/bin/bash
echo "当前脚本路径:$(readlink -f "$0")"
```
输出:```
当前脚本路径:/path/to/real/
```
方法 3:使用 dirname 和 pwd
dirname 命令可用于获取文件的目录,而 pwd 命令可用于获取当前工作目录。这两种命令可以结合使用来获取脚本的绝对路径。```bash
#!/bin/bash
echo "当前脚本路径:$(dirname "$0")/$(basename "$0")"
```
输出:```
当前脚本路径:/path/to/
```
方法 4:使用 BASH_SOURCE 数组
Bash 数组 BASH_SOURCE 包含当前脚本执行的源文件列表。第一个元素是当前脚本的绝对路径。```bash
#!/bin/bash
echo "当前脚本路径:${BASH_SOURCE[0]}"
```
输出:```
当前脚本路径:/path/to/
```
方法 5:使用 /proc/$PID/cwd
在 Linux 系统中,每个进程都有一个 /proc/$PID/cwd 文件,其中包含进程当前工作目录的符号链接。这可以用来获取脚本的绝对路径。```bash
#!/bin/bash
echo "当前脚本路径:$(readlink -f /proc/$PPID/cwd)"
```
输出:```
当前脚本路径:/path/to/
```
在 Bash 脚本中获取当前脚本执行的路径有多种方法。根据具体情况,可以根据需要选择适当的方法。
2024-12-24
上一篇:bash 脚本编写的最佳编辑器

街机游戏开发:用JavaScript构建复古像素风游戏
https://jb123.cn/javascript/67586.html

Perl语言名称由来及字母含义深度解读
https://jb123.cn/perl/67585.html

Perl语言与电影《搏击俱乐部》: 一场代码与反叛的碰撞
https://jb123.cn/perl/67584.html

Perl文本输出详解:从基础到进阶技巧
https://jb123.cn/perl/67583.html

JavaScript攻防:从XSS到DOM Manipulation,全面解析前端安全
https://jb123.cn/javascript/67582.html
热门文章

指定 Java 路径以运行 Bash 脚本
https://jb123.cn/bash/13396.html

Bash 脚本监控 Linux 系统
https://jb123.cn/bash/8959.html

bash编写脚本:深入浅出的指南
https://jb123.cn/bash/7139.html

40 个 Bash 脚本解释器命令
https://jb123.cn/bash/16341.html

在 Xshell 中执行 Bash 脚本的全面指南
https://jb123.cn/bash/13897.html