linux shell 脚本 代码的执行

1) if kill -0 cat $pid > /dev/null 2>&1; then
2) echo $command running as process
3) cat $pid.Stop it first.
4) exit 1
5) fi
求解1)是什么意思怎么执行, 不知道是 (1) tmp0 = cat $pid 其中的值,在执行
(2) tmp1=kill -0 tmp0 (3) tmp2=tmp1> /dev/null 2>&1
那么(3)的执行结果是什么 if tmp2 ; 判断的依据是什么

以及求大神叫 a.out > outfile 2>&1 这句的执行顺序,和表达的意义