Це не зовсім профілювання, але ви можете простежити ваш сценарій у процесі його виконання. Поставте set -xvперед розділом, який ви хочете простежити, і set +xvпісля розділу. set -xувімкнює xtrace, який покаже кожен рядок, який виконується. set -vвмикає багатослівний режим, який також показуватиме рядки, які можуть мати ефект, але не виконуються, наприклад присвоєння змінної.
Ви також можете позначити свій слід. Вам потрібен емулятор терміналу, який може позначити часові позначки кожного рядка; Єдине, про що я знаю, це RealTerm , це програма Windows, але вона буде працювати з Wine. Ви також можете використовувати grabserial, хоча я не пробував цього, окрім реальних серійних портів. Ви можете дізнатися, який серійний пристрій використовує ваша оболонка, запустивши ps -p $$(якщо цього немає, скористайтеся, manщоб дізнатися, як включити стовпець TTY у свій psвихід).
Також див. Інструменти профілювання продуктивності для скриптів оболонок на переповнення стека.