Bash можно использовать как AND, так и OR в одной строке?

Когда я компилирую свой код, я обычно делаю что-то вроде следующего:

make remake 2> error.txt || less error.txt 

Тогда, если less не появляется, я копирую свой код в каталог exe .

Я бы хотел, чтобы команда копирования выполнялась автоматически, если компиляция прошла успешно. Например, я мог бы сделать:

 make remake 2> error.txt && cp ./bin/out.out ../exe/out.out 

однако тогда я потерял бы полезную функцию, которая бы меньше всплывала с моими ошибками, если компиляция терпит неудачу.

Можно ли объединить оба вместе?

очевидно

 make remake 2> errors.txt || less errors.txt && cp ./bin/out.out ../exe/out.out 

не будет работать, потому что && приведет к тому, что команда cp будет запускаться каждый раз, когда я уйду less (при условии, что она вернет 0) в случае сбоя команды компиляции.

Можно ли выполнить то, что я пытаюсь сделать в 1 строке командной строки?

Вот ты где:

 make remake 2> errors.txt && cp ./bin/out.out ../exe/out.out || less errors.txt