看到手册中有处:
varname=value command # 定义子进程变量并执行子进程
我就试了下几个例子:
MYSQL_PWD=Root123@ mysql -u root
这个命令可以正常执行
MYSQL_PWD=Root123@; mysql -u root
这样就不行了, 会报错 Access denied for user
那么
var1="abc" echo "$var1"
为啥不会输出 "abc"
var1="abc"; echo "$var1"
这个命令却可以输出"abc". 这里需要加分号才可以, 上面那个例子不加分号才行, 不懂是为啥