in localpath i have files with names
myfile1_20090821.dat
myfile2_20090831.dat
myfile3_20090811.dat
myfile4_20090822.dat
myfile5_20090825.dat
type="OP"
module="abc"
if [ $type == 'OP' ]; then
case $module in
abc) x=1
while [ $x -le 5 ]
do
INPUT_FILE[$x]=`ls localpath/myfile$x*.dat`
x=$(( $x + 1 ))
done;;
*) echo "not.......";;
esac
fi
给出错误:ls localpath / myfile $ 1 * .dat not found
请帮帮我
答案 0 :(得分:1)
基本脚本看起来有效,但是,只有从“localpath”的父目录运行它才会起作用
即。如果你从运行脚本的目录中执行'ls',你应该看到列出的localpath目录。
尝试完全限定目录。
答案 1 :(得分:0)
我的程序版本:
#!/usr/bin/bash type="OP" module="abc" if [ $type == 'OP' ]; then case $module in abc) x=1 while [ $x -le 5 ] do INPUT_FILE[$x]=`ls localpath/myfile$x*.dat` x=$(( $x + 1 )) done;; *) echo "not.......";; esac fi
不提供任何错误消息。你的版本中有一个shebang系列吗?
实际上,我的工作也没有shebang。我正在使用Cygwin。