我有一个bash脚本。 我需要查看文件中是否存在“文本”,如果存在,请执行一些操作。如何从bash脚本搜索文件中的表达式?
1
A
回答
4
如果您需要执行对包含文本的所有文件的命令,你可以用xargs
结合grep
。例如,这将删除含有“yourtext”所有文件:
grep -l "yourtext" * | xargs rm
要搜索一个文件,使用if grep ...
if grep -q "yourtext" yourfile ; then
# Found
fi
1
grep是你的朋友在这里
2
像下面会做你的需要。
grep -w "text" file > /dev/null
if [ $? -eq 0 ]; then
#Do something
else
#Do something else
fi
0
cat <file> | grep <"text">
检查与test $?
检查出优秀的返回码: Advanced Bash-Scripting Guide
1
你可以把grep
的if
语句中,你可以使用-q
标志使其沉默。
if grep -q "text" file; then
:
else
:
fi
0
只是使用shell
while read -r line
do
case "$line" in
*text*)
echo "do something here"
;;
*) echo "text not found"
esac
done <"file"
相关问题
- 1. 文件搜索bash脚本
- 2. Bash工具在文件中搜索正则表达式模式
- 3. Bash脚本使用Grep来搜索文件中的模式
- 4. 的bash:从搜索文本文件
- 5. 如何在linux shell脚本中使用正则表达式搜索文件
- 6. 用于从目录中的文件列表中搜索的bash脚本
- 7. 的bash的grep搜索文件的正则表达式
- 8. Bash脚本 - 搜索名称与模式匹配的文件
- 9. 在文本文件中搜索列的正则表达式
- 10. 多行搜索和在bash脚本中使用正则表达式
- 11. 正则表达式与崇高的文本搜索,但不是从Python脚本
- 12. 如何使用Bash脚本搜索基于列的文本文件
- 13. 算术表达式的Bash脚本
- 14. 正则表达式文件重命名的Bash脚本
- 15. 如何使用正则表达式来反转bash脚本中的文本?
- 16. 如何从bash脚本源文件
- 17. 在bash脚本中的特定模式后搜索模式
- 18. 从Python中的文件搜索和打印正则表达式
- 19. bash/sed脚本使用正则表达式从文件中获取输出
- 20. 如何使用正则表达式在Unix中搜索文件?
- 21. 如何从shell脚本中搜索和替换文件中的文本?
- 22. 搜索在XML文件中bash脚本值
- 23. Bash脚本正则表达式
- 24. 正则表达式在bash脚本
- 25. Bash脚本 - 正则表达式。 regmatch.unix
- 26. Bash脚本正则表达式
- 27. bash脚本正则表达式匹配
- 28. 正则表达式bash脚本
- 29. 排除正则表达式bash脚本
- 30. shell脚本文件搜索
我更喜欢'如果[$(grep的-c “文本” 文件)-gt 0]',但它同样的事情。 – 2010-03-13 18:41:19
马丁的方法(使用'grep -q')比这两种方法都更快(不搜索整个文件,只是第一次匹配)和(恕我直言)清洁。 – 2010-03-13 20:25:20