java-ee - Java执行shell脚本,如何知道shell脚本中出现需要用户手动输入的情况?
大家讲道理
大家讲道理 2017-04-18 10:08:57
0
1
357

Java:

ProcessBuilder pb = new ProcessBuilder("./test.sh");
pb.directory(new File(shellFileDir));
Process p = pb.start();
p.waitFor();

Shell:

...
read -p "please input:"
...

运行shell脚本,但是shell脚本中有需要用户输入的内容,如果出现这种情况,Java这里就卡住了,我想当shell出现用户输入内容的情况时,Java能获取到这种情况,并且当异常处理,在Java中或者在shell中应该怎么更改?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

membalas semua(1)
巴扎黑

Jika cara paling mudah ialah menambah tamat masa, jika tamat masa, ia akan menjadi ralat, sudah tentu, terdapat penyelesaian yang lebih baik Jika anda benar-benar ingin berinteraksi dengan arahan berjalan tertentu yang dipanggil dalam test.sh anda , gunakan Expect dikendalikan dalam shell Jika anda ingin menggunakan Java untuk mengendalikan ini, sila gunakan Java Expect

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan