Используется для создания временных имен с идентификатором процесса. Скажем, вам нужно имя файла, но это имя должно быть уникальным для процесса, в котором вы участвуете - поэтому, если несколько человек запускают один и тот же сценарий ksh, они не будут наступать друг на друга.
$$ в оболочках bash, sh и других UN * X.