在Linux下,創建新用戶需要使用命令行工具。本文將演示如何使用Java代碼來創建一個新用戶,并設置密碼。
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class UserCreation { public static void main(String[] args) throws IOException { // 讀取用戶輸入的用戶名和密碼 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.print("請輸入新用戶名:"); String username = br.readLine(); System.out.print("請輸入新密碼:"); String passwd = br.readLine(); // 執行Linux命令創建新用戶 String createUserCommand = "sudo useradd " + username; String setPasswordCommand = "echo " + passwd + " | sudo passwd --stdin " + username; String[] commands = {createUserCommand, setPasswordCommand}; try { for (String command : commands) { Process p = Runtime.getRuntime().exec(command); int exitCode = p.waitFor(); if (exitCode != 0) { System.out.println("命令 " + command + " 執行失敗!"); System.exit(1); } System.out.println("命令 " + command + " 執行成功!"); } } catch (IOException | InterruptedException e) { e.printStackTrace(); } } }
上述Java代碼通過調用Linux的useradd和passwd命令來創建新用戶和設置密碼。其中,sudo表示以超級用戶權限執行命令,避免出現權限問題。
需要注意的是,創建新用戶和設置密碼都需要輸入超級用戶密碼來進行驗證,因此在執行Java程序時需要輸入sudo密碼。