Ниже приведен код, используемый для отладки,
#!/bin/sh
exec >> ./debug.$$.out
exec 2>&1
set -vx
export PS4='[$0: $LINENO]+ '
export PS4
# code here
в окне RHEL, где
$ ls -l /bin/sh
lrwxrwxrwx. 1 root root 4 Jul 16 12:10 /bin/sh -> bash
$LINENO
используется для языка оболочки bash (в RHEL 7.5).
В окне Solaris-10, использующем язык оболочки Bourne, ниже приведен код для отладки,
#!/bin/sh
exec >> ./debug.$$.out
exec 2>&1
set -vx
PS4='[$0]+ '
export PS4
# code here
без номера строки, где
$ls -l /bin/sh
lrwxrwxrwx 1 root root 13 Nov 1 19:39 /bin/sh -> ../../sbin/sh
строка Шебангане может быть изменено в окне Solaris
Как получить номер строки? в поле Solaris