GNU/Linux >> Linux の 問題 >  >> Linux

Javaでsudo権限でbashコマンドを実行するには?

これなら使えると思いますが、投稿するのはちょっとためらっています。だから私はただ言います:

これは自己責任で使用してください。推奨されていません。私を訴えないでください...

public static void main(String[] args) throws IOException {

    String[] cmd = {"/bin/bash","-c","echo password| sudo -S ls"};
    Process pb = Runtime.getRuntime().exec(cmd);

    String line;
    BufferedReader input = new BufferedReader(new InputStreamReader(pb.getInputStream()));
    while ((line = input.readLine()) != null) {
        System.out.println(line);
    }
    input.close();
}

/etc/sudoers を visudo で編集し、特定のスクリプトに対する NOPASSWD 権限をユーザーに付与します。

ユーザー名 ALL=(ALL) NOPASSWD:/opt/yourscript.sh


Linux
  1. 1つのSudoで一連のコマンドを実行しますか?

  2. OSに基づいてBashコマンドを実行するために1つのVimコマンドをマップする方法は?

  3. CurlコマンドでPpaを追加するとどのように機能しますか?

  1. Sudoを使用したリダイレクトまたはパイピングを含むコマンドを実行するにはどうすればよいですか?

  2. 時間コマンドでBashスクリプトの実行にかかる時間を確認する

  3. bash コマンドで CPU スパイクを作成する方法

  1. LinuxでBashの履歴をクリアする方法

  2. 入力でNohupコマンドを実行しますか?

  3. bash スクリプトを実行するには?