Как сценарий ksh может определить полный путь к самому себе, если получен от другого?

Как сценарий может определить свой путь, если он источник ksh? т.е.

$ ksh ". foo.sh"

Я видел очень хорошие способы сделать это в BASH, размещенном в stackoverflow и других местах, но еще не нашел метода ksh.

Использование «$ 0» не работает. Это просто относится к «кш».

Обновление: я пробовал использовать команду "history", но она не знает истории за пределами текущего скрипта.

$ cat k.ksh
#!/bin/ksh
. j.ksh
$ cat j.ksh
#!/bin/ksh
a=$(history | tail -1)
echo $a
$ ./k.ksh
270 ./k.ksh

Я бы хотел, чтобы было эхо "* ./j.ksh".

6
задан Henk Langeveld 3 November 2015 в 22:40
поделиться