LinuxなどのUnixライクなOSには”デーモン”と呼ばれる概念があります。
ユーザーが起動しなくてもOSの裏側で常に動作し、いろいろなことをしてくれる所謂”常駐アプリ”です。
一方、Windowsにも同様の仕組みがありますが、こちらは”サービス”と呼ばれます。
基本的に、内容はデーモンとさほど変わりません。
デーモンを操作する場合、例えばLinux系では
#サービスの停止(Systemd) systemctl stop サービス名 #サービスの開始(Systemd) systemctl start サービス名 #サービスの停止(sysvinit) service サービス名 stop #サービスの開始(sysvinit) service サービス名 start etc...
というように、コマンドで操作します。
また、サービスを自動開始させるかどうかは
#サービスの自動開始有効化/無効化(Systemd) systemctl enable サービス名 systemctl disable サービス名 #サービスの自動開始有効化/無効化(sysvinit) chkconfig サービス名 on chkconfig サービス名 off
のようにします。
一方Windowsのサービスの場合は、Windows自体がGUIありきのOSなので、サービスの操作も、標準でGUIから行うことができます。
サービスの自動起動の有効/無効もGUI上から指定できます。
しかし、Windowsでも、処理のバッチ化などをするためにコマンドライン上から操作をしたい場面があります。
GUIの自動操作はなかなかやりづらいので、CUI上で操作できる方法を探したところ、見つけることができました。
バッチ で Windowsサービス を 起動、終了 する 方法 – galife
Windows上のコマンドラインででサービスを操作する場合は、
#サービスの停止 net stop サービス名 #サービスの開始 net start サービス名
これだけでいけます。
操作感はUnixライクなOSに結構似ていますね。
ちなみに、ちょっとわかりづらいですが、サービスの自動機能のon offは”sc”コマンドを使うことで操作できるようです。
sc.exe でサービスのスタートアップの種類を変更するAdd Star – 日々是笑心
WindowsのCUI環境はちょっと特殊で、難解感も感じることがありそうですが、覚えておくと非常に楽になるかもしれませんね。