Заполнитель в bash / shell для другого дистрибутива linux

У меня проблема. Мне нужно добавить в автозапуск линукса несколько скриптов. Но в моей инфраструктуре другие дистрибутивы. Конечно, способ добавления этого скрипта в автозапуск разный. В CentOS это chkconfig, в debian / ubuntu - update-rc.d. Итак, у меня есть сценарий:

    function autorun () {
    if [ -f /etc/debian_version ]; then
       os="Debian $(cat /etc/debian_version)"
       echo $os
       update-rc.d ${i} defaults"
    elif [ -f /etc/redhat-release ]; then
       os=`cat /etc/redhat-release`
       echo $os
       chkconfig --add ${i}"
    else
       os="$(uname -s) $(uname -r)"
       echo $os
       echo "Other OS. Please check type of autorun in your OS"
    fi
    }

    $i=nginx

    autorun $i 

Да, работает. Могу я написать это без объявления переменной, например:

autorun nginx

Пожалуйста, помогите, может быть, вы можете предложить другой способ, это будет хорошо. Спасибо.

0
задан 21 December 2016 в 14:27
1 ответ

В bash параметры функций доступны в переменных $ 1 , $ 2 и т. Д.,

function ar () 
{
    echo $1
}

приведет к

> ar Hello
Hello

> ar Hello World
Hello

> ar "Hello World"
Hello World

Я считаю, что это то, что вам нужно, но если нет, отредактируйте свой вопрос, чтобы он был более ясным.

1
ответ дан 4 December 2019 в 16:24

Теги

Похожие вопросы