繁体   English   中英

Java从执行命令输出中删除第一行

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM