在比较bash脚本中的两个文件时没有这样的文件或目录错误

时间:2018-02-02 15:22:56

标签: linux bash

我在bash脚本中非常新,我编写了一个代码来比较输入的文件和名为new2的目录中的文件,但是我收到以下错误:

  

第8行:[〜/ new1 / file1:没有这样的文件或目录

这是我的代码:

input=0
while true; do
        echo "enter a file name from directory new1 to copy it to directory new2 "
        echo "or enter ctrl+c to exit: "
        read input
        i=0
        for F in $(ls ~/new2/) ;do
                if ["~/new1/$input" -ef $F] ;then
                        i=1
                        break
                fi
        done
        if [ $i -eq 0 ];then
                mv ~/new1/$input ~/new2/ 
                echo $input "moved succussfully"
        else
                echo "file exist"
        fi
done

任何人都可以帮我解决这个问题吗? 提前谢谢!

1 个答案:

答案 0 :(得分:2)

if ["~/new1/$input" -ef $F] ;then

在两个括号前后都需要一个空格

if [ "~/new1/$input" -ef $F ] ;then