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