我正在构建一个网络应用程序,帮助人们提高某些单词的英语发音。该网站为用户显示一个句子,他/她说话然后按“结果”按钮。然后,Web应用程序将两个文件发送到服务器:.txt和.wav文件。
服务器(Linux(Ubuntu))应该获取文件,并进行一些分析和计算,然后在名为“Results.txt”的文件上打印出结果。然后,Web应用程序(基于PHP)应该从文件中读取结果并将其显示给用户。
问题是:我不确定在Web应用程序和Linux服务器之间进行通信的最佳方式。直到现在,我成功地在服务器上编写了.txt和.wav文件。我可以构建一个Linux脚本来获取这两个文件并执行所需的计算。我面临的是:我不知道如何正确有效地启动脚本。更重要的是:当脚本完成后,如何知道我可以安全地从“Results.txt”文件中读取结果?我需要一个同步工具或方法。
我问过一些人,他们告诉我在服务器端使用java应用程序,但我不知道怎么做!
任何帮助,请? :)
答案 0 :(得分:0)
首先,你可以用PHP做到这一点。使用shell_exec()方法,您可以运行Linux脚本命令并读取输出。例如:
$ output = shell_exec(“ls -l> outputFile.txt”);
会将当前目录列表写入名为outputFile.txt的文件
其次,你也可以使用Java做同样的事情。使用:
Runtime.getRuntime()。exec(“ls -l”)。waitfor();
最后不使用waitfor()将导致shell脚本的异步执行。您还可以使用
读取Linux脚本的stdout和stderr流Process.getInputStream()
和
分别是Process.getErrorStream()
方法。希望有所帮助。