2015-04-08 4 views
0

У меня есть часть скрипта, где я проверяю , если файл существует. Я не вижу, где моя ошибка, потому что она перескакивает в другую (файл существует) и начинает загрузку этого файла. Часть кода:Неверный синтаксис скрипта bash

... 
    if [ -f '$ins.img' ]; 
    then 
     echo '$ins.img already exists' 
    else 
     wget http://$2/$ins/$ins.img 
    fi 
... 
+0

Переменные не расширяются в одинарных кавычках. –

+0

lol, я не знал, что есть разница – Dambre

ответ

0

Это потому, что вы используете одиночные кавычки в вашем if. Переменные не заполняются внутри одинарных кавычек, поэтому он проверяет файл в буквальном смысле $ins.img, который, очевидно, не существует.

Решение легко, используйте двойные кавычки.

+0

Не знал, что есть разница. Спасибо, кстати :)) – Dambre

Смежные вопросы