Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 无法以用户身份执行shell脚本_Linux - Fatal编程技术网

Linux 无法以用户身份执行shell脚本

Linux 无法以用户身份执行shell脚本,linux,Linux,我已经为环境设置创建了一个脚本。我需要Oracle作为脚本的一部分进行安装。下面是我写的剧本请原谅我的错误,我是新来的。问题是,当我执行它时,它们单独运行得很好,但总体而言,脚本在解压命令后退出并失败。有人能帮忙吗 sudo -i -u oracle mkdir /home/oracle/dump sudo -i -u oracle cd /home/oracle/dump JAR1="p13390677_112040_Linux-x86-64_1of7.zip" JAR2="p133906

我已经为环境设置创建了一个脚本。我需要Oracle作为脚本的一部分进行安装。下面是我写的剧本请原谅我的错误,我是新来的。问题是,当我执行它时,它们单独运行得很好,但总体而言,脚本在解压命令后退出并失败。有人能帮忙吗

sudo -i -u oracle mkdir /home/oracle/dump
sudo -i -u oracle cd /home/oracle/dump

JAR1="p13390677_112040_Linux-x86-64_1of7.zip"

JAR2="p13390677_112040_Linux-x86-64_2of7.zip"

folder="/home/oracle/database"

if  test -s "$JAR1"
 then
echo "$JAR1 exists"
else

sudo -i -u oracle 

wget XXXp://XXXXXX/XXXXXX/download/database/11.2.0.4/p13390677_112040_Linux-x86-64_1of7.zip
fi

if  test -s "$JAR2"
 then
echo "$JAR2 exists"
else

sudo -i -u oracle 

wget XXXp://XXXXXXX/software/download/database/11.2.0.4/p13390677_112040_Linux-x86-64_2of7.zip

fi

if  test -s "$folder"
 then
echo "$folder exists"
else

unzip /home/oracle/p13390677_112040_Linux-x86-64_1of7.zip
unzip /home/oracle/p13390677_112040_Linux-x86-64_2of7.zip

fi

sudo -i -u oracle ORACLE_HOSTNAME=`hostname`
sudo -i -u oracle ./runInstaller $ORACLE_HOSTNAME -silent -responseFile       /home/oracle/db.rsp

cd /opt/db/oraInventory
./orainstRoot.sh

cd /opt/db/oracle/11.2.0
./root.sh

如果你把代码放在一个代码块中,那么可读性会更好,在每行代码前插入4个空格。我认为问题出在这行:unzip/home/oracle/p13390677\u 112040\u Linux-x86-64\u 1of7.zip unzip/home/oracle/p13390677\u 112040\u Linux-x86-64\u 2of7.zip看起来有两个命令在同一行代码上,所以第二个永远不会被执行。若要解决此问题,请在命令之间插入分号或将它们放在单独的行中。解压部分已成功完成。解压后脚本将退出。这两个文件提到解压有一个数字的差异。