bash if with or and отрицание

почему:

#!/bin/bash
wtf=false
if [ $wtf ] || [ ! -f filethatexists.whatever ]
then
 echo "WTF1"
fi
if [ ! -f filethatexists.whatever ]
then
 echo "WTF2"
fi

печатает:

WTF1

вместо ничего? Особенно вызывает недоумение то, что вторая форма работает так, как ожидалось, а первая - нет.

12
задан i30817 26 September 2010 в 22:53
поделиться