<команда1>|<команда2> - перенаправление вывода первой команды на ввод второй. Команда работает несколько иначе, чем а Unix: команды выполняются не паралельно, а одна за другой.

Примеры.
echo temp|cat;
bc 2+sin(2)|cat;

<команда1>||<команда2> - условное выполнение команд. <Команда2> выполниться только в том случае, если <команда1> выполнена не правильно.

Примеры.
cat abc||echo Файл abc не найден!