shell特殊变量的使用

时间:2022-09-21 15:38:22

$0     当前脚本名
$#     传递给脚本的参数个数
$1     第一个参数,依次类推
$*,$@    所有参数

$?        上一条命令的执行返回结果
$$      当前shell进程ID

$PPID   父进程ID

 

下面的shell输出shell名称,pid,参数个数

依次列出参数

#!/bin/bash
echo "pro name:$0 , pid:$$ , ppid:$PPID , args num:$#"
index=1
for agrs in $*
        do 
                echo "args$index:$agrs"
                let "index+=1"
        done
exit

 

 

下面shell 杀死作为参数的进程,无参数则退出

#!/bin/sh  
echo "参数个数为:$#"
if [ $# == 0 ];then  #注意[ xxx ]两边的空格
                echo "please input pro name"
                exit
fi
NAME=$1  
echo $NAME  
ID=`ps -ef | grep "$NAME" | grep -v "grep" | awk '{print $2}'`  
echo $ID  
for id in $ID;do  
                kill -9 $id  
                echo "killed $id"  
done  
exit

 

shell调用文件:source  filename