首页 > 解决方案 > 获取找到的文件的目录 - Bash

问题描述

我正在尝试找到我的 Laravel 项目的路径

我做了这个

sudo find / -name artisan   

我懂了

/home/forge/john/artisan  

我只想要这部分

/home/forge/john/

我试过这个

sudo find / -name artisan | pwd;

我有

/root 

我只想要找到的文件的路径/home/forge/john/

有人可以在这里给点提示吗?


我试过了

project_path=$("dirname `sudo find / -name artisan`")
echo "$project_path"

我不断得到

bash: line 103: dirname /home/forge/john/artisan: No such file or directory                     

/root 

标签: linuxbashshellubuntuunix

解决方案


您可以使用命令dirname,它会去除路径的非目录部分

要将其与命令的其余部分集成,您可以执行以下操作:

dirname `sudo find / -name artisan` 

或者

dirname $(sudo find / -name artisan)

推荐阅读