perl下怎么切换用户

perl下怎么切换用户

现在用root来运行perl脚本,想切换到其他用户做一些操作.直接su - tester好像不行啊.是不是必须要用Expect模块?
perldoc perlvar

看$<, $>, $( , $)
楼上的意思是不是,找到要执行命令的uid,然后把process的uid设置成这个uid然后再运行这个程序.是不是?
你就看看那四个变量什么意思
su - tester -c /path/file
恩,本来也想用这个办法,但是要执行的命令太多很复杂,用su一个个执行效果不好.
单纯的改变process的uid好像不能把环境变量也改过来吧.相当于su tester,而不是su - tester
这样的话,不如把脚本运行用户的环境变量设一下了
因为有个程序必须用tester跑,su tester后去跑有点问题,一般是su - tester,具体哪些环境变量产生的问题还没搞清楚,所以比较倾向最好是能su - 过去.