转到父目录内联
Go to parent directory inline
我想知道是否可以直接转到文件的父目录。我知道我可以输入 cd ..
并且它会。但是,如果我想做类似 echo $(find . -name “xyz.png”)..
的操作,它会 return 文件的父目录而不是文件路径。或者我搜索文件夹而不是文件,并且想要 return 父目录的路径。
您可以使用 dirname
去除路径的最后部分。在您的示例中结合 find
,它只会为您提供找到的任何内容的父目录。你可以像在 cd $(find -name "xyz.png" | xargs dirname)
中那样在 cd 中使用它,如果这是你想要做的事情的话。
您也可以使用 -type d
选项来查找,如果您想要匹配目录名而不是文件名,则只查找目录。
未测试:
function dirs_ofFile
{
find -name "" | xargs dirname
}
然后
$ cd $(dirs_ofFile xyz.png | sed 1q) # in case there is more than one.
我想知道是否可以直接转到文件的父目录。我知道我可以输入 cd ..
并且它会。但是,如果我想做类似 echo $(find . -name “xyz.png”)..
的操作,它会 return 文件的父目录而不是文件路径。或者我搜索文件夹而不是文件,并且想要 return 父目录的路径。
您可以使用 dirname
去除路径的最后部分。在您的示例中结合 find
,它只会为您提供找到的任何内容的父目录。你可以像在 cd $(find -name "xyz.png" | xargs dirname)
中那样在 cd 中使用它,如果这是你想要做的事情的话。
您也可以使用 -type d
选项来查找,如果您想要匹配目录名而不是文件名,则只查找目录。
未测试:
function dirs_ofFile
{
find -name "" | xargs dirname
}
然后
$ cd $(dirs_ofFile xyz.png | sed 1q) # in case there is more than one.