Ctrl+Z를 통해 일시 중지된 프로세스가 있는지 표시하는 표시기를 PS1에 추가하고 싶습니다. 이를 위해서는 이 상황을 확인할 수 있는 기능이 필요합니다. 나는 이것에 대해 어디서부터 생각해야할지조차 모릅니다. 구글은 나를 실망시켰다. 어떤 아이디어가 있나요?
답변1
"Ctrl+Z로 일시 중단된 프로세스"는 실제로 "이 셸의 하위 프로세스에 의해 일시 중단된 프로세스"의 하위 집합이며 추적하기가 더 쉽습니다. 이는 일시 중단된 백그라운드 작업이 있음을 의미합니다.
zsh에서는 확인할 수 있습니다jobstates
대량으로.
if ((${(M)#jobstates:#suspended:*} == 0)); then
echo There are no suspended jobs
else
echo There are ${(M)#jobstates:#suspended:*} suspended jobs
fi
Bash 또는 zsh에서는 jobs -s
보류 중인 작업만 나열됩니다.
echo "There are $(jobs -s | wc -l) suspended jobs"