我试着用这个
if `$(egrep '(cinta|aduh|siapa)' $inputFile)` ; then
filter='love'
else `$(egrep '(kok|aku|dan)' $inputFile)` ; then
filter='jangan'
else `$(egrep '(mari)' $inputFile)`; then
filter='mari'
else `$(egrep '(kerumah|bebeb)' $inputFile)`; then
filter='bebeb'
else `$(egrep '*' $inputFile)`; then
filter='other'
fi
但我得到了结果
./amosv5: line 175: syntax error near unexpected token `then'
./amosv5: line 175: ` then'
为什么我收到此错误。
我需要在php
中这样做if (strpos($inputfile, "cinta") || strpos($inputfile, "aduh") || strpos($inputfile, "siapa") {
$filter = 'love';
} else { $filter = 'other'; } }
答案 0 :(得分:6)
语法是错误的!
您可以直接在bash
条件上使用大多数 shell实用程序的返回码。如果第一个条件egrep
具有多个模式匹配cinta|aduh|siapa
,则它将返回true,如果它能够找到任何模式。同样,这可以用于剩下的部分。
if egrep 'cinta|aduh|siapa' "$inputFile" ; then
filter='love'
elif egrep 'kok|aku|dan' "$inputFile" ; then
filter='jangan'
..