
есть скрипт, который я разработал с его помощью, он имеет строку команды, как показано ниже:
mytemp=`echo ${sourcedir}|awk -F/ '{printf "/%s/tmp",$2}'`/`basename $0`-$1.$$
в конце команды мы видим, $$
что выводится число. когда я использую echo $$
в bash, я также вижу число, подобное следующему:
#echo $$
23019
что именно это за число и что такое $$
?
решение1
ОтРасширенное руководство по написанию сценариев Bash:
$$ — это идентификатор процесса (PID) самого скрипта.
$BASHPID — это идентификатор процесса текущего экземпляра Bash. Это не то же самое, что переменная $$, но часто дает тот же результат.
решение2
$$
это идентификатор процесса текущего экземпляра оболочки. Так что в вашем случае число 23019 — это PID этого экземпляра bash
.
Следующее должно дать вам лучшее представление:
ps -p $$