shell - Shell循环遍历特定目录中的所有文件
问题描述
如何使用shell脚本遍历特定目录中的所有文件?我在当前工作目录中有一个目录,即 .temp。在 .temp 里面有另一个目录索引,里面有一些文件。
我尝试了以下方法:
for file in ./.temp/index/*
do
echo "File in index: $file"
done
for file in "./.temp/index"/*
do
echo "File in index: $file"
done
但是,它打印$file
为./.temp/index/$file
. 例如:
File in index: ./.temp/index/first.txt
File in index: ./.temp/index/second.txt
File in index: ./.temp/index/third.txt
...
是否有符合 POSIX 标准的方式来遍历该目录中的实际文件?
解决方案
for _file in `find . -type f`;
do
echo "File: $_file";
done
-type f
将在目录中找到文件。您可以根据需要添加其他过滤器。
推荐阅读
- python - 如何在flask jinja2模板中使用python函数?
- python - 在 Pandas 中使用条件动态过滤基于数据框的日期
- cakephp - 将 CakePHP 安装从 3.0.13 升级到 3.8
- javascript - 从对象数组中获取唯一项
- awk - 如何在 awk 中计算文本文件的持续时间
- javascript - 为什么 mouseover 和 mouseout 在 javascript 中不能正常工作?
- reactjs - 如何不断检查reactjs中的过期时间?
- django - DRF 序列化程序更新说反向外键字段为空,即使它有数据
- javascript - 你能为我解释一下这个 JavaScript 函数吗?
- intellij-idea - IntelliJ Idea 在类旁边显示百分比 - 我如何禁用它?