千家信息网

老男孩教育每日一题:2017年3月9日-请解释下面Shell脚本中if开头的整行代码的意思及应用场景吗?

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,请解释下面Shell脚本中 if开头的整行代码的意思,你见过它的应用场景么?if(kill -0 $pid 2>/dev/du11)then echo"oldboy"else echo"ol
千家信息网最后更新 2026年11月01日老男孩教育每日一题:2017年3月9日-请解释下面Shell脚本中if开头的整行代码的意思及应用场景吗?

请解释下面Shell脚本中 if开头的整行代码的意思,你见过它的应用场景么?

if(kill -0 $pid 2>/dev/du11)then    echo"oldboy"else   echo"oldgirl"fi

面试题:请解释if (kill -0 $pid 2>/dev/null)代码的意思?

if(kill -0 $pid 2>/dev/null)    then       echo "oldboy"else       echo "oldgirl"fi

老男孩解答要点:

  1. kill -0 $pid中的-0表示不发送任何信号给PID对应的进程,但是仍会对变量值PID对应的进程是否存在进行检查,如果$pid对应的进程存在,则返回0,不存在返回1。

  2. 2>/dev/null不输出错误信息。

  3. 系统里的应用场景是MySQL的/etc/init.d/mysqld脚本中停止MySQL服务的脚本代码段。

  4. 使用/etc/init.d/mysqld stop命令执行脚本关闭数据库的程序代码如下:

'stop')

# Stop daemon. We usea signal here to avoid having to know the

# root password.

iftest-s"$mysqld_pid_file_path"

then

mysqld_pid=`cat "$mysqld_pid_file_path"`

if (kill-0$mysqld_pid2>/dev/null)

then

echo$echo_n"Shutting down MySQL"

kill$mysqld_pid

# mysqld shouldremove the pid file when it exits, so wait for it.

wait_for_pid removed "$mysqld_pid""$mysqld_pid_file_path"; return_value=$?

else

log_failure_msg "MySQL server process #$mysqld_pidis not running!"

rm"$mysqld_pid_file_path"

fi

# Delete lock forRedHat / SuSE

if test-f"$lock_file_path"

then

rm-f"$lock_file_path"

fi

exit$return_value

else

log_failure_msg "MySQLserver PID file could not be found!"

fi

;;


代码 脚本 进程 场景 意思 应用 解释 开头 男孩 信号 命令 数据 数据库 程序 系统 要点 量值 服务 检查 解答 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南京欣网互联网络科技有限公司 互联网扶贫科技 互联网公司 科技公司 有马互联网科技 世界互联网领先科技成果 安徽鑫晟辉互联网科技 壕鑫互联网络科技 天扬科技互联网广告 互联网科技创新企业排名 深圳国际航运科技和互联网 智腾互联网科技有限公司 华夏恒生互联网科技013171 工业互联网展湾科技股份有限公司 合肥互联网科技公司公章图片 元气玛特互联网科技公司是外包吗 互联网金融科技元年 陕西云淼互联网科技公司 普陀区互联网教育科技管理办法 陕西彩京云互联网科技有限公司 山东亿川互联网科技有限责任公司 手磨咖啡 百单网互联网科技有限公司 互联网是第几次科技革命的成果 互联网科技产业 互联网金融 科技金融 深圳互联网络科技有限公司 青海科技产业互联网发展 安徽零酒互联网科技有限公司 盐城市攀科互联网科技有限公司 瑞安市蟠桃会互联网科技有限公司
0