Commit 1c2ad8b2 authored by Vitaly Lipatov's avatar Vitaly Lipatov

add serv exists for check of service existence

parent ce0bc20c
......@@ -145,6 +145,7 @@ set_service_type
verbose=
quiet=
short=
non_interactive=
show_command_only=
serv_cmd=
......@@ -194,6 +195,9 @@ check_command()
cat) # HELPCMD: print out service file for the service
serv_cmd=cat
;;
exists) # HELPCMD: check if the service is installed on the system
serv_cmd=exists
;;
edit) # HELPCMD: edit service file overload (use --full to edit full file)
serv_cmd=edit
;;
......
#!/bin/sh
#
# Copyright (C) 2021 Etersoft
# Copyright (C) 2021 Vitaly Lipatov <lav@etersoft.ru>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
serv_exists()
{
local SERVICE="$1"
shift
case $SERVICETYPE in
systemd)
# too direct way: test -s /lib/systemd/system/dm.service
docmd systemctl cat "$SERVICE" "$@" >/dev/null 2>/dev/null
;;
*)
case $DISTRNAME in
ALTLinux)
local INITFILE=/etc/init.d/$SERVICE
[ -r "$INITFILE" ] || return
return ;;
*)
fatal "Have no suitable for $DISTRNAME command for $SERVICETYPE"
;;
esac
esac
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment