Для начала, это не будет:
./ShellFile.sh 2>&1 | pathToLogFile.log
, поскольку он попытается передать ваш вывод через исполняемый файл с именем pathToLogFile.log , а не отправлять вывод туда.
Вам необходимо:
./ShellFile.sh >& pathToLogFile.log
, которое перенаправляет как стандартный вывод , так и ошибку в файл.