以文件名作为参数的shell脚本,并从Unix / Linux / Ubuntu中pwd上方的每个目录中删除此文件

时间:2016-05-03 04:33:20

标签: shell unix

我的shell脚本如下。

if [ $# -eq 0 ]
then
    echo "pass the file name"
    exit
 fi
fl=$1
ch=1
h=/home

while [ $ch -eq 1 ]
do
    cd ..
    p=`pwd`
    echo "$p/$fl"
    rm `echo "$p/$fl"` 2> /dev/nullif [ $p = $h ]
    then
            ch=0
    fi
done

但执行时显示语法错误。  第16行:意外标记then' line 16:附近的语法错误,然后是

这个脚本有什么错误?

1 个答案:

答案 0 :(得分:0)

如果脚本错误放置了。

if [ $# -eq 0 ]
then
    echo "pass the file name"
    exit
fi

fl=$1
ch=1
h=/home

while [ $ch -eq 1 ]
do
    cd ..
    p=`pwd`
    echo "$p/$fl"
    rm `echo "$p/$fl"` 2> /dev/null
    if [ $p = $h ]
    then
            ch=0
    fi
done