Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 使用unix make检查子字符串_String_Unix - Fatal编程技术网

String 使用unix make检查子字符串

String 使用unix make检查子字符串,string,unix,String,Unix,在编码方面,我写了: cat $ sString | grep sSubstring > sResult 因此,我想检查sString是否包含ssbstring,如果包含,则将结果放入sResult 背景:我已将文件内容放入ssstring-如果文件中存在ssbstring,则sResult包含ssbstring的文件的每一行 当ssbstring处于sString中时,此功能正常工作。当它不是,我得到 我怎样才能正确处理这个问题?完整的代码是: cat $ sString | grep

在编码方面,我写了:

cat $ sString | grep sSubstring > sResult
因此,我想检查
sString
是否包含
ssbstring
,如果包含,则将结果放入
sResult

背景:我已将文件内容放入
ssstring
-如果文件中存在
ssbstring
,则
sResult
包含
ssbstring
的文件的每一行

ssbstring
处于
sString
中时,此功能正常工作。当它不是,我得到

我怎样才能正确处理这个问题?完整的代码是:

cat $ sString | grep sSubstring > sResult
if [ -s sResult -gt 0 ];then \
(echo "substring present" ) \
else (echo "substring not present" ) ;fi

(有了错误代码,我再也找不到
其他的

听起来你可能需要这个

cat $ sString | { grep sSubstring || true; } > sResult

。问题是当
grep
没有找到任何东西时,它会返回一个非零的退出代码<代码>生成
将认为这是一个错误。因此,您只需确保命令始终通过
-ing退出代码
grep
和退出代码
true
返回零退出代码。
true
的退出代码始终为0。

要检查字符串中是否存在特定的子字符串,可以使用“findstring”函数。
更多信息:。

FWIW,我在这里尝试了其他解决方案,但这些解决方案在这个make文件上不起作用。太棒了!这很快,而且效果很好。非常感谢!