我有一大堆文件,如下所示:
/tmp/a/b/a
/var/files/z
/tmp/o
.
.
.
我需要在每一行中匹配所有目录,但不匹配文件名。 我怎么能用bash来做呢?
答案 0 :(得分:2)
如果您假设每个路径都以文件结尾,那么您只需使用dirname
。
dirname /var/files/z
/var/files
如果您混合使用文件和目录,则可以在运行-d
之前使用bash的-f
和dirname
file test operators进行检查。
答案 1 :(得分:2)
击:
path="$(pwd)"
echo "$path"
echo "${path%/*}"