Это не совсем профилирование, но вы можете отследить ваш скрипт во время его работы. Поставьте set -xvперед разделом, который вы хотите отслеживать, и set +xvпосле раздела. set -xвключает xtrace, который покажет каждую строку, которая выполняется. set -vвключает подробный режим, который также показывает строки, которые могут оказывать влияние, но не выполняются, например, назначение переменных.
Вы также можете поставить метку времени. Вы нуждаетесь в эмуляторе терминала, который может пометить время каждой строкой Единственный, кого я знаю, это RealTerm , программа для Windows, но она будет работать с Wine. Вы также можете использовать grabserial, хотя я не пробовал, кроме как с реальными последовательными портами. Вы можете узнать, какое последовательное устройство использует ваша оболочка, запустив ps -p $$(если это не так, используйте, manчтобы узнать, как включить столбец TTY в ваш psвывод).
Также см. Инструменты профилирования производительности для сценариев оболочки в Stack Overflow.