【发布时间】:2015-09-17 23:42:00
【问题描述】:
我正在尝试使用 ssh 远程运行脚本,并且需要使用来自远程服务器的一些参数。将所有参数保存在远程服务器位置 temp/test/test.prm 文件中。收到错误消息“invoke.sh: line 20: ./temp/test/test.prm: No such file or directory”
请参阅下面的示例脚本。对脚本有非常基本的了解,所以请指导我
#!/bin/sh
Param1=$1
Param2=$2
ssh usr@Server1
. ${Param1}/Client/scripts/Sample1.prm
cd $prmHome/$prmSetPath
ls | sed '/\.log$/d' > $prmHome/$prmScript/Filelist.txt
cd $prmHome/$prmScript
while read LINE
do
ExportFilName=$LINE
./conversion.sh $prmHome/tmp_export/convert_$Param2.csv $prmHome/$prmSetPath/'$ExportFilName'
done < Filelist.txt
rm -rf $prmHome/$prmScript/Filelist.txt
exit 0
Content of Sample1.prm
prmHome=/iis/home
prmSetPath=/export/set
PrmScript=/Client/scripts
在使用 ssh 连接到远程服务器后,我尝试了相同的槽命令行并且它正在工作,但是当我尝试通过脚本 (invoke.sh) 执行相同操作时,它不会抛出此类文件或目录错误
【问题讨论】:
-
看起来您正在尝试
source您的参数文件。但为什么?是shell脚本还是什么? -
或者只是一个一般性问题,您打算在远程主机上运行代码的哪一部分?