[英]Different output — when running mathtext in command line and when the command is executed from a java program using apache-commons-exec
[英]java remove first line from exec command output
与我在Java中执行linux命令并将输出显示到html表中的第一个问题相关,我设法使其正常工作,但是我还有一个问题:如何从输出中删除第一行? 下面是代码:
<%
String[] disk;
String line;
String process;
Process p;
BufferedReader input;
p = Runtime.getRuntime().exec("df -h");
input = new BufferedReader(new InputStreamReader(p.getInputStream()));
%>
<tr bgcolor="#f0f0f0">
<td>
<b>Disk</b>
</td>
<td>
<b>Size</b>
</td>
<td>
<b>Used</b>
</td>
<td>
<b>Avail</b>
</td>
<td>
<b>Use %</b>
</td>
<td>
<b>Mounted</b>
</td>
<td>
</td>
</tr>
<%
while ((line = input.readLine()) != null)
{
disk = line.split("\\s+");
%>
<tr>
<td><% out.println(disk[0]); %></td>
<td><% out.println(disk[1]); %></td>
<td><% out.println(disk[2]); %></td>
<td><% out.println(disk[3]); %></td>
<td><% out.println(disk[4]); %></td>
<td><% out.println(disk[5]); %></td>
</tr>
<%
}
input.close();
%>
输出如下:
我要删除的是已使用的Filesystem Size Used Avail Use% Mounted
,在表标题之后显示。
通过while
循环之前添加这一行,可以在while
循环之前读取1行:
input.readLine();
跳过第一行?
int count = 0;
while ((line = input.readLine()) != null)
{
count++;
if (count == 1) continue;
disk = line.split("\\s+");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.