shell脚本里切换用户后继续执行

1、使用 <<EOF 参数实现

#!/bin/bash
su - wuzz <<EOF
pwd
echo "hello world"
EOF #这里需要注意这个EOF必须定格写而且后面也不能有东西包括空格

2、使用命令行实现

(1)切换用户只执行少量语句

su - lisi -c "cd /opt/wudata/datasync-client;pwd"

(2)切换用户执行脚本

su - lisi -c "cd /opt/wudata/datasync-client;./wuzz.sh"    #用的是当前用户的环境变量
 
su - lisi -s /bin/sh /opt/wuldata/datasync-client/wuzz.sh    #用的是wudata用户的环境变量

Q.E.D.