linux - 智能 shell 脚本,用于搜索文件名中的文本并进行错误处理

标签 linux text find

我正在尝试构建一个带有一些错误处理功能的 shell 脚本,但我的知识有限。我正在搜索其中包含 tests 字符串的任何文件。但是,如果找到该字符串,我会报告错误。我可以使用 find . -name "*tests*"-print 列出包含该字符串的文件,但是如何列出该文件,然后在有结果时在输出中报告错误,如果为空则通过?

谢谢

最佳答案

手册页是这样说的:

find exits with status 0 if all files are processed successfully, greater than 0 if errors occur. This is deliberately a very broad description, but if the return value is non-zero, you should not rely on the correctness of the results of find.

这有点难题,但如果您可以合理确定不会出现不相关的错误,您可以执行类似的操作

find . -name '*tests*' -print -exec false \;

如果您想要标准错误上找到的文件列表,请添加重定向>&2

关于linux - 智能 shell 脚本,用于搜索文件名中的文本并进行错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22553962/

相关文章:

python - 使用 ctypes 包装具有依赖项的编译库

java - (Java) Reader 一直无缘无故地删除文本

C - 如何读取txt文件中有多少个按空格分割的字符串?

python - 将配置数据文本与默认数据文本进行比较

linux - 如何递归地按字母顺序对一堆文件进行排序

PHP 在对象中查找值

php代码被写入以纯文本形式输出,为什么?

linux - sleep (0)?在代码中保持一致的时间?

基于 Python Web 的解释器安全问题

javascript - JQuery:使用自定义 .load() 将 HTML 插入相应的选择器