【发布时间】:2012-06-22 00:22:51
【问题描述】:
如何比较 Fish 中的两个字符串(如其他语言中的 "abc" == "def")?
到目前为止,我已经使用了 contains 的组合(事实证明,如果 $a 是空字符串,contains "" $a 只会返回 0,尽管这似乎并不适用于所有情况) 和switch(带有case "what_i_want_to_match" 和case '*')。不过,这两种方法似乎都不是特别……正确。
【问题讨论】:
-
所以,
[实际上是一个命令(在 OS X 上为/bin/[),以及一个 Bash 内置,具有不同的语法。去图吧! -
这条评论让我很开心! [ 命令是一个非常强大的工具。
-
就个人而言,我实际上已经开始在我的所有脚本中使用
test而不是[,因此很明显它是一个外部命令而不是语言的一部分。 (test和[是完全相同的工具。)当然,我认为test也是 Bash 内置的。 -
我可能应该更新这一点,指出在 Fish 2.x 中,
test和[都是内置的。但是,它们与外部[命令具有相同的语法,因此接受的答案仍然是正确的。
标签: fish