Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
在bash中是否有一种方便的方法来区分两个字符串?_Bash_Shell_Npm_Homebrew - Fatal编程技术网

在bash中是否有一种方便的方法来区分两个字符串?

在bash中是否有一种方便的方法来区分两个字符串?,bash,shell,npm,homebrew,Bash,Shell,Npm,Homebrew,正在考虑创建一个自制公式或npm包或其他东西来在bash中区分两个字符串,从而简化 diff <(echo "string 1") <(echo "string 2") 所以我很好奇这样的东西是否已经存在或者不存在?你可以使用这样的东西 if [ "string1" = "string2" ]; then 或者只是 test "string1" = "string2" && echo equal 不要使用 test $a = $b &&

正在考虑创建一个自制公式或npm包或其他东西来在bash中区分两个字符串,从而简化

diff <(echo "string 1") <(echo "string 2")

所以我很好奇这样的东西是否已经存在或者不存在?

你可以使用这样的东西

   if [ "string1" = "string2" ]; then
或者只是

   test "string1" = "string2" && echo equal
不要使用

   test $a = $b && echo equal
变量可以有空格或其他奇怪的东西

使用引号:

   test "$a" = "$b" && echo equal
我更喜欢显式测试,而不是同样有效的语法

[[ "$a" = "$b" ]] && echo ok
[[ "$a" = "$b" ]] && echo ok