我有两个shell脚本:
one.sh
echo "hello"
su - oracle -c "sh /tmp/two.sh"
echo "good bye"
two.sh
echo "bla bla bla"
我想将“one.sh”作为“root”运行并看到此输出:
hello
bla bla bla
good bye
怎么可能?
答案 0 :(得分:2)
在第
行su - oracle -c "sh two.sh"
解释器不知道文件“two.sh”的路径。
尝试使用绝对路径...(例如,sh /tmp/two.sh“)。
所以:
root@myServer:/tmp# ./one.sh
hello
bla bla bla
good bye
<强>更新强>
请检查oracle用户是否可以找到“sh”...否则,请指定“sh”的绝对路径...
答案 1 :(得分:1)
首先将chmod +x
设置为您的脚本
尝试:
echo "hello"
su - oracle -c /tmp/two.sh
echo "good bye"