如果存在特定字符,则 bash



我正在创建一个脚本来自动对硬盘驱动器进行分区。

现在我在以下方面遇到了问题:

我需要检查文本文件中是否存在"."。(所以只是点)。实现此目的的最佳方法是什么?

例:

hdhelft=`cat /sometextfile`
if grep "." $hdhelft    
then    
hdhelf2=something    
fi    

无需将文件读入变量,除非这是您真正想要的。从您的代码中并不完全清楚您想要什么,但这是我的解释。使用 -F 标志进行grep,使其解释 .作为文字,并且-q,因此它不会给出任何输出(只是是或否)。此外,如果您确实希望$hdhelft包含文件的内容,请使用$(<filename)来获取它。

hdhelft=$(</sometextfile)
if grep -qF '.' /sometextfile; then
    hdhelf2=something
fi
您需要

转义.字符,因为 grep 将其解释为"任何字符"。所以使用:

grep '.' yourfile

相关内容

  • 没有找到相关文章

最新更新