Странное приглашение оболочки (PS) в скриптах оболочки, запущенных в другом типе оболочки

Странное приглашение оболочки (PS) в скриптах оболочки, запущенных в другом типе оболочки

Когда я запускаю #!/bin/shскрипт, содержащий set -o xtraceв интерактиве, zshя получаю странный вывод, похожий на %F{red}>> %f. Очевидно, что PS4 моего .zshrcиспользуется, но интерпретирующая оболочка - sh. Как мне этого избежать?

решение1

Не используйте exportпеременную PS4, когда вы устанавливаете ее в ~/.zshrc. Просто установите ее так, как будто это внутренняя переменная (какой она и является).

Связанный контент