linux 中 grep -q选项
1、linux 中 grep -q选项表示静默输出, 即不显式匹配结果
root@DESKTOP-1N42TVH:/home/test2# ls a.txt root@DESKTOP-1N42TVH:/home/test2# cat a.txt ## 测试数据 d e j s q u z c b root@DESKTOP-1N42TVH:/home/test2# grep "s" a.txt ## 直接输出匹配结果 s q u root@DESKTOP-1N42TVH:/home/test2# echo $? ## 输出0表示匹配成功 0 root@DESKTOP-1N42TVH:/home/test2# grep -q "s" a.txt ## -q选项表示静默输出 root@DESKTOP-1N42TVH:/home/test2# echo $? 0
2、grep命令用在 if判断语句中
root@DESKTOP-1N42TVH:/home/test2# ls a.txt test.sh root@DESKTOP-1N42TVH:/home/test2# cat a.txt d e j s q u z c b root@DESKTOP-1N42TVH:/home/test2# cat test.sh ## 测试脚本, 利用grep匹配结果作为判断语句 #!/bin/bash if grep -q "s" a.txt then echo "s exit!" else echo "s not exit!" fi root@DESKTOP-1N42TVH:/home/test2# bash test.sh ## 判断成功,执行if语句 s exit! root@DESKTOP-1N42TVH:/home/test2# sed 's/s/x/g' a.txt -i root@DESKTOP-1N42TVH:/home/test2# cat a.txt ## 修改了测试数据 d e j x q u z c b root@DESKTOP-1N42TVH:/home/test2# bash test.sh ## 再次进行判断 s not exit!