检查字符串是否包含换行符的最简单方式是什么?
例如,在
之后FILE=$(find . -name "pattern_*.sh")
我想检查换行符以确保只匹配一个文件。
答案 0 :(得分:11)
您可以使用模式匹配:
[[ $FILE == *$'\n'* ]] && echo More than one line
答案 1 :(得分:9)
如果$str
包含新行,您可以按
if [ $(echo "$str" | wc -l) -gt 1 ];
then
// perform operation if it has new lines
else
// no new lines.
fi
答案 2 :(得分:2)
要参考您的示例:请注意,文件名也可以包含换行符。
计算文件的安全方法是
find -name "pattern_*.sh" -printf '\n' | wc -c
这样可以避免打印文件名,而只打印换行符。