0

我有很多文件,如下所示:

/tmp/a/b/a
/var/files/z
/tmp/o
.
.
.

我需要在每一行中匹配所有目录,但不是文件名。我怎样才能用 bash 做到这一点?

4

2 回答 2

2

如果您假设每个路径都以文件结尾,那么您可以使用dirname.

dirname /var/files/z
/var/files

如果您有文件和目录的混合,您可以使用 bash-d-f 文件测试运算符在运行之前检查dirname

于 2012-06-13T11:05:44.647 回答
2

重击:

path="$(pwd)"
echo "$path"
echo "${path%/*}"
于 2012-06-13T11:10:08.260 回答