当前位置: 首页 > 面试题库 >

如何在Linux中遍历目录?

叶鸿煊
2023-03-14
问题内容

我在Linux上用bash编写脚本,需要遍历给定目录中的所有子目录名称。如何遍历这些目录(并跳过常规文件)?

例如:
给定目录是/tmp/
它具有以下子目录:/tmp/A, /tmp/B, /tmp/C

我想检索A,B,C。


问题答案:
cd /tmp
find . -maxdepth 1 -mindepth 1 -type d -printf '%f\n'

简短说明:

  • find 查找文件(很明显)

  • .是当前目录,它位于cdis之后/tmp(恕我直言,它比/tmp直接包含在find命令中更为灵活。cd如果要在此文件夹中执行更多操作,则只有一个位置可以更改,)。

  • -maxdepth 1-mindepth 1确保find仅在当前目录中查找,并且不将.自身包含在结果中

  • -type d 只查找目录

  • -printf '%f\n 对于每次匹配,仅打印找到的文件夹名称(加上换行符)。

等等!



 类似资料:
  • 问题内容: 从文档和示例开始,我一直在尝试使用JDK7中的新globbing功能 我可以得到诸如与 示例,但我一直无法使语法正常工作。我希望能够创建如下内容: 并感谢一个简单的例子。我正在使用Windows 7。 更新:@Oleg和@JBNizet清楚地表明“ /”语法与操作系统无关。请注意,Javadocs建议也可以使用与操作系统有关的语法(必需)。 仍然存在的问题:已经采用@Nizet并进行了

  • 问题内容: 我有一个目录日志文件。我想使用Python脚本处理此目录中的每个文件。 我该怎么做呢? 问题答案: 使用或,取决于您是否要递归执行。

  • 问题内容: 我想遍历JSON文件的内容并将其打印到控制台。 我想我确实把清单混在一起了。 这就是我试图获取所有元素的方法 这是我的JSON(简体:) (可在此处找到完整的JSON输出:Link) 当然,我得到一个错误,我应该在[]中使用整数输入,而不是字符串,但是我不知道该怎么做。 这是: 我怎么了? 问题答案: 实际上,要查询,只需将其添加到最后一行的括号中即可。除此之外,它似乎可以在命令行上的

  • 问题内容: 我需要获取目录中所有文件的列表,包括所有子目录中的文件。用Java完成目录迭代的标准方法是什么? 问题答案: 你可以用来测试给定的文件(路径)是否为目录。如果是true,则只需再次调用同一个方法及其结果即可。这称为递归。 这是一个基本的启动示例。 请注意,这对树的深度超过JVM堆栈可以容纳的深度很敏感。你可能要使用迭代方法或尾递归,但这是另一个主题;)

  • X1.4.0新增 sp_scan_dir($pattern,$flags) 功能: 替代scan_dir的方法 参数: $pattern:检索模式 搜索模式 .txt,.doc; (同glog方法) $flags:返回模式 同glog方法 返回: 类型数组 使用方法: //扫描application目录 $files=sp_scan_dir('application/*');//返回applic

  • 问题内容: 我想使用Java处理某个目录中的每个文件。 最简单(也是最常见)的方法是什么? 问题答案: 如果目录名称位于中,