Как указано в комментариях, Ваше заключение в кавычки является неправильным. Вам нужны одинарные кавычки для предотвращения $LINENO
от того, чтобы быть расширенным, когда строка прерывания сначала анализируется.
Это работает:
#! /bin/bash
err_report() {
echo "Error on line $1"
}
trap 'err_report $LINENO' ERR
echo hello | grep foo # This is line number 9
Выполнение его:
$ ./test.sh
Error on line 9
Так как Вы упоминаете ssh/putty, я ожидаю, что у Вас есть доступ оболочки к полю. Установка каталога является немного громоздкой, имение версии тестирования за пределами основной копии лучше. Следовательно:
переместите каталог тестирования за пределами ведущего устройства
mv folder1/testing folder1_testing
переместитесь текущая основная версия в другом месте - отмечают, что в этой точке сеть становится недоступной, пока Вы не добираетесь до следующего шага
mv folder1 folder1_saved
скопируйте ранее тестирующую версию в надлежащее местоположение
cp -a folder1_testing folder1
если Вы не можете решить это другим способом, символьная ссылка версия тестирования к предыдущему месту для сможения, это получает доступ к нему через сеть в том же месте:
ln -vs folder1_testing folder1/testing