bash中的条件语句有什么问题?

时间:2019-06-16 03:39:05

标签: bash shell validation

我正在尝试检查:

如果$ file是二进制文件,而$ file不是图像文件,则执行某些操作。

if [[ "$(file --dereference --mime "$FILE")" =~ binary ]] && [[ "$FILE" != \.jpg$|\.jpeg$|\.png$ ]]; then
  echo "$1 is a binary file"
  exit 0
fi

错误是syntax error in conditional expression: unexpected token

我想我可能忽略了一些简单的事情。我已经在Google上搜索了很多,但无法获得工作说明。任何提示都将不胜感激。

1 个答案:

答案 0 :(得分:1)

您似乎想对第二个remove = (index) => { let newPersonList = this.state.persons.splice(index, 1); // the item from array this.setState({ persons: newPersonList }); } 进行否定匹配。您可以通过将const test = this.state.persons.map( (i, index) => <Person data={this.state} remove={()=>this.remove(index)} test={this.just_testing} consoleLog={this.updatePerson} key={i.login.sha1} id={Math.random()} first_name={i.name.first} last_name={i.name.last} nat={i.nat} picture={i.picture.large} email={i.email} age={i.dob.age} /> ) 放在比赛[[上来做到这一点

以下是一个可以帮助您的示例:

!