当前位置: 技术问答>linux和unix
大家能帮我这个SHELL做个简单的注释吗?
来源: 互联网 发布时间:2016-02-23
本文导语: #!/usr/bin/sh SYBASE_SERVER=dataserver while true do ps -ef | grep $SYBASE_SERVER | grep -v grep >> /dev/null ---这个什么意思 if [ $? -eq 0 ] ---这个什么意思 then echo Alive >> /dev/null else echo Die >> /dev/null exit fi sl...
#!/usr/bin/sh
SYBASE_SERVER=dataserver
while true
do
ps -ef | grep $SYBASE_SERVER | grep -v grep >> /dev/null ---这个什么意思
if [ $? -eq 0 ] ---这个什么意思
then
echo Alive >> /dev/null
else
echo Die >> /dev/null
exit
fi
sleep 2 ---这个什么意思
done
SYBASE_SERVER=dataserver
while true
do
ps -ef | grep $SYBASE_SERVER | grep -v grep >> /dev/null ---这个什么意思
if [ $? -eq 0 ] ---这个什么意思
then
echo Alive >> /dev/null
else
echo Die >> /dev/null
exit
fi
sleep 2 ---这个什么意思
done
|
ps -ef ¦ grep $SYBASE_SERVER ¦ grep -v grep > > /dev/null //这个是管道的使用,首先是查看进程,以完整的方式
查看所有所有进程 再进程中查找的关键字 dataserver(就是变量$SYBASE_SERVER的值) 重定项到/DEV/NULL文件中 (grep 好像没有-v这个参
数的)
if [ $? -eq 0 ] ---//这个是判定 "$?"表示执行上一条命令的返回值,也就是while的条件如果是假那就返回0,那if的条件就成
立, ‘-eq’ 表示‘==’
sleep 2 ---//命令延迟2秒
查看所有所有进程 再进程中查找的关键字 dataserver(就是变量$SYBASE_SERVER的值) 重定项到/DEV/NULL文件中 (grep 好像没有-v这个参
数的)
if [ $? -eq 0 ] ---//这个是判定 "$?"表示执行上一条命令的返回值,也就是while的条件如果是假那就返回0,那if的条件就成
立, ‘-eq’ 表示‘==’
sleep 2 ---//命令延迟2秒
|
ps -ef ¦ grep $SYBASE_SERVER ¦ grep -v grep > > /dev/null
grep -v是为了过滤掉上面ps -ef | grep ... 本身这个命令
if [ $? -eq 0 ]
$?是上面那个ps -ef | grep ... 命令运行返回的结果,此处是判断是否有含dataserver这个字符串的进程正在运行,如果此条件为真,则说明有进程在运行
grep -v是为了过滤掉上面ps -ef | grep ... 本身这个命令
if [ $? -eq 0 ]
$?是上面那个ps -ef | grep ... 命令运行返回的结果,此处是判断是否有含dataserver这个字符串的进程正在运行,如果此条件为真,则说明有进程在运行