我正嘗試在Java中創建一個Unix shell。對於「cd」更改目錄命令,一切都很好。每次我嘗試更改目錄時,它都保留在同一個目錄中。Java Unix Shell更改目錄
我看了一下this沒有運氣。
這是我正在使用的代碼片段。
try
{
Process p = null;
File directory = new File("/Users/myName");
if(inputList.get(0).equals("cd")
{
System.setProperty("user.dir", "Users/myName");
System.out.println(System.getProperty("user.dir"));
ProcessBuilder pb = new ProcessBuilder("cd");
pb.directory(directory);
System.out.println(pb.directory);
p = pb.start();
}
}
請注意,打印getProperty命令時會返回正確的目錄地址。 另請注意,打印pb.directory()時,它也會打印出正確的目錄地址。 然而,當接下來執行「pwd」命令時,它顯示我在我的項目目錄中。
感謝您的澄清! – Dylan