为什么我们使用" /etc/init.d/process start"

时间:2017-09-27 05:05:04

标签: linux shell

为什么我们在下面的程序中使用/etc/init.d/httpd start?为什么我们不能使用service httpd start?对我来说,它显示为无法识别的服务。 (我已经安装了httpd。)

#!/bin/bash
if (( $(ps -ef | grep httpd | wc -l) > 1 ))
then
   echo "httpd is running!!!"
else
   /etc/init.d/httpd start
fi

1 个答案:

答案 0 :(得分:-1)

:-) vishal我不是故意挫败你。但是,如果没有很多假设,很难回答你的问题。

使用/etc/init.d/httpd start

的一些注意事项
  • 硬编码位置
  • 假设 httpd 存储在文件/etc/init.d/httpd中,而不是说 apache2 nginx 或其他。< / LI>
  • 即使ps -ef测试假定进程名称为httpd,有时也不是

使用service httpd start

的一些注意事项

例如,

  • service httpd start可能没有 httpd 注册为服务
  • 如果您使用service,您最终可能会重新启动您可能不想做的其他相关服务
  • service可能会在启动期间隐藏错误,您可能希望这样做。