在与shell脚本相同的目录中创建文件夹[重复]

Posted

技术标签:

【中文标题】在与shell脚本相同的目录中创建文件夹[重复]【英文标题】:Create folder in same directory as shell script [duplicate] 【发布时间】:2014-03-21 20:42:34 【问题描述】:

我是 Shell 脚本新手:

我正在尝试创建一个脚本,该脚本要求用户输入文件夹名称,找到运行脚本的目录,并在同一目录中创建一个包含一堆文件的文件夹(我可以这样做部分)

我的问题是我似乎无法弄清楚如何在不明确拼写的情况下让脚本找到其当前目录。

我希望能够从任何地方运行它并让它在它旁边创建文件夹,而用户不必每次都从主文件夹中找到它。

有人可以帮忙吗?

【问题讨论】:

使用 $PWD 或 pwd。以 echo $PWD 或 echo pwd 开头 【参考方案1】:

你可以试试这个:

DIR="$( cd "$( dirname "$0" )" && pwd )

将为您留下一个包含当前目录完整路径的 $DIR 变量。更多信息请见this answer!

【讨论】:

谢谢。这非常有效。【参考方案2】:
script_dir=$(dirname "$0")

$0 是运行脚本的名称,在命令行中输入(例如:./bin/script

如果你想要完整路径:

script_dir=$(cd -P -- "$(dirname "$0")" && pwd -P)

【讨论】:

以上是关于在与shell脚本相同的目录中创建文件夹[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在与位于项目目录中的 .jar 文件相同的文件夹中创建一个文件

在与其他源 tcl 文件相同的目录中创建 tcl 包的问题

用于在存储库测试中创建相同表的 Sql 脚本

Bash 脚本实例:获取符号链接的目标位置

如何在 dev c++ 中创建头文件

如何在我的 React Native 应用程序中创建脚本