-1

使用不使用BACK QUOTE 什么区别

例如,这两个代码都可以正常工作。

第一个带有BACK QUOTE 的示例,第二个没有BACK QUOTE 的示例。

非常感谢您的帮助。

if [ "`/usr/bin/whoami`" != "root" ] ; then
/bin/echo "This script must be run as root or sudo."
exit 0
fi

if [ "/usr/bin/whoami" != "root" ] ; then
/bin/echo "This script must be run as root or sudo."
exit 0
fi
4

1 回答 1

2

在第一种情况下,您比较if命令的执行结果/usr/bin/whoami(这是反引号的作用)

在第二种情况下,您比较两个字符串

/usr/bin/whoami

另一个例子可以是:

if [ "`date`" = "date" ]
then echo this is true
fi

上面的代码将不起作用,因为您比较字符串“Thu Jan 30 17:03:54 CET 2020”和字符串“date”

if [ "date" = "date" ]
then echo this is true
fi

上面的代码将工作:)

于 2020-01-30T15:22:16.403 回答