Всем спасибо!
Mam(O)n, отрицание там лишнее.
aliftin, qt по привычке написали?
man test - то рулит, кто ж спорит, только я прочитал в руководстве, что можно вообще test в проверке условия не использовать и думал, как обойтись без него. Потому как родные программистскому глазу "or", "and", "<", ">" читаются легче чем "-gt", "-lt" и т.д.
"$kanal" != $kanal для -gt и -lt
То,ч то они отличаются, я понял, ибо в разных примерах по-разному использовались. Но вот в чём именно состоит отличие, до меня так и не дошло.