bash - 获取 shell 脚本目录的父目录

标签 bash shell

<分区>

我这里有一个 shell 脚本:

/node_modules/.bin/exec.sh

在 exec.sh 脚本中,我想获取包含该脚本的目录的父目录路径(不是 pwd/cwd!)。我可以像这样获取包含目录:

`dirname $0`

这将产生:

/node_modules/.bin

但我希望获得更高一级的目录,我只想获得

/node_modules

我在寻找答案时遇到问题,我的猜测是:

`dirname $1`

但只是猜测,完全不确定这是否正确。任何人都可以解释如何执行此操作及其工作原理吗?

最佳答案

运行 dirname 两次(嵌套)。

~$ dirname $PWD
/home
~$ dirname `dirname $PWD`
/
~$ 

关于bash - 获取 shell 脚本目录的父目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40798249/

相关文章:

android - APV pdf阅读器。安装,解压缩和 native 库问题

postgresql - 永久设置 PGDATA 环境变量 Mac

bash - 遍历文件中的行并扩展全局变量

bash - 如何为列表项生成唯一编号

arrays - 如何在 bash 中逐行将命令输出转换为数组?

bash - scp 和远程 mkdir -p

java - 在 unix 机器上渲染美国单位分隔符

linux - 当从 cron 调用脚本时,脚本中的 Sed 命令不起作用

bash - 测试 bash shell 脚本

linux - 识别单个 unix 目录中文本文件中的模式