2

在 Unix 中,如果存在子目录,是否可以仅使用一个命令列出目录?

例如,如果它包含一个名为“division_A”的子目录,我想列出目录名称

/data/data_file/form_100/division_A
/data/data_file/form_101/division_A
/data/data_file/form_102/division_A

期望的结果是

form_100 
form_101 
form_102

我只能使用 2 个命令行来实现目标。

cd /data/data_files
echo `ls -d */division_A 2> /dev/null | sed 's,/division_A,,g'`

所以我想问是否有人可以使用一个命令来继续它。

非常感谢!

4

2 回答 2

3

使用find

find /data/data_file -type d -name division_A -exec sh -c 'basename `dirname {}`' \; 2> /dev/null
于 2013-08-02T13:02:05.647 回答
0

如果你不介意奇怪的..,你可以这样做:

$ ls -d /data/data_file/*/division_A/..

它会输出类似的东西/data/data_file/form_100/division_A/..,你可以像普通文件夹一样访问它。

于 2013-08-02T13:18:37.130 回答