Existem alguns métodos para desvendar seu problema.
Estou entendendo que você está usando um C-Shell (eu uso o Bash, mas determinado ambiente com o qual eu interajo usa o TCSH.)
Um método para cumprir sua exigência é o bloqueio sistemático orientado a processos.
A abordagem de bloqueio de processos é mais parecida com isso:
#!/bin/csh
set process_id = $1
set sub_sequent_cmd = $2
set ANTECEDENT_PROC = XXYYZZ
#
while (pidof $ANTECEDENT_PROC)
do
sleep 10
if (pidof $ANTECEDENT_PROC)
then
sleep .1
else
./sub_sequent_command
break
fi
end
A premissa da solução é o que é importante. Monitore o proc com um script externo e, quando o antecedent proc terminar, execute seu script subseqüente.
Isso só funcionaria se você refatorasse seu script csh para ser chamado em uma sessão csh exportada.