linux - 使用 find 和 -exec {},有没有办法计算总数?

我正在使用与此类似的命令:

find . -name "*.php" -exec chmod 755 {} \;

虽然,我没有使用 chmod,但我使用的是不同的命令,我不会在此列出。这个命令工作正常。但是,要操作的文件和目录有上千个,而且这个操作需要一些时间。我想知道是否有办法在操作完成时显示某种总计?也许是修改文件的计数?

我唯一能想到的就是做这样的事情:

find . -name "*.php" -exec chmod 755; echo "+"; {} \;

这行得通吗?至少我们可以看到正在发生的事情……有人有更好的建议吗?

最佳答案

这行得通:

$ find . -name "*.php" -exec chmod 755 {} \; -exec /bin/echo {} \; | wc -l

您必须包含第二个 -exec/bin/echo 才能使其工作。如果 find 命令没有输出,则 wc 没有输入来计算行数。

https://stackoverflow.com/questions/7719785/

相关文章:

linux - 是否对 10000 个客户端/秒问题的解决方案进行了现代审查

python - 你能愚弄 isatty 并分别记录 stdout 和 stderr 吗?

linux - 为 Linux 应用程序创建安装程序

c++ - 当父进程被杀死时,使用 fork() 创建的子进程是否会自动被杀死?

c++ - 如何使用多个版本的 GCC

linux - 用于 ssh 的类似 teamviewer 的工具?

linux - 根据日期范围过滤日志文件条目

c++ - GLIBCXX 版本

linux - 如何为 Linux、OS X、Windows 制作 Travis CI 测试包?

linux - 对一行的最后一个字段进行排序