実行レベルスクリプト

実行レベルスクリプト

ユーザーがランレベルを簡単に変更できるように、簡単なスクリプトを作成したいと思います。スクリプトはユーザーに新しい実行レベルを選択し、/sbin/initプログラムを実行して確認メッセージを受け取るように要求する必要があります。

どんなアイデアがありますか?

PSランレベルが変わったら確認メッセージを受け取りたいです。助けてください

ベストアンサー1

簡単に試してみてください。

次の内容でファイルを作成しますmyscript

#!/bin/bash
echo -n "Enter Run level":
read rl;
sudo init $rl;

whereは、echo入力された内容を印刷し、入力を受け取りread変数に保存しrlsudo init $rl;実行レベルを変更するコマンドを実行するために使用されます。

詳細コントロールwhile/ Validate入力を使用すると、同じループを使用できますcase

実行権限を付与しなければsudo chmod +x myscript実行できません。

その後、次のスクリプトを実行できます。

$ ./myscript
$ Enter Run level : 3

編集する:

@RuiFRibeiroによる提案、実行レベルを変更するコマンドは次のとおりですtelinit

NAME
       telinit - change system runlevel

SYNOPSIS
       telinit [OPTION]...  RUNLEVEL

DESCRIPTION
       telinit may be used to change the system runlevel.

したがって、スクリプトtelinitでこれを使用する必要があります。init


ランレベルを確認するには、who -rまたはrunlevelコマンドを使用して前および現在のランレベルを出力できます。

$ who -r | awk '{print $1,$2}'
run-level 3
$ runlevel
2 3

おすすめ記事