代码...
-----------------------------------------------------------------------------import java.io.*;public class MonitorDirectory implements Runnable
{
File br;
long tmp;
Process process;
String fileName ="";
public MonitorDirectory(String filepath) throws Exception

br = new File(filepath);//定义文件路径
new Thread(this).start();
}
public void run()
{
System.out.println("br==="+br.toString());
while(true)
{
try
{
if(br.listFiles().length==28){//若目录下有28个文件则执行
if(br.toString().equals("fin_file_sx"))
{
//fileName = "fin_load_sx.sh";
System.out.println("1");
Runtime.getRuntime().exec("fin_load_sx.sh");
}
else if(br.toString().equals("fin_file_he"))
{
//fileName = "fin_load_he.sh";
System.out.println("2");
Runtime.getRuntime().exec("fin_file_he.sh");
}
else if(br.toString().equals("fin_file_21"))
{
//fileName = "fin_load_21.sh";
System.out.println("3");
Runtime.getRuntime().exec("fin_file_21.sh");
}

//System.out.println("fileName222===="+fileName);
//Runtime.getRuntime().exec("./"+fileName);
System.out.println("over...");
}
System.out.println("now sleep");
Thread.sleep(300000);
System.out.println("wakeup");
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}

public static void main(String [] args) throws Exception

new MonitorDirectory("fin_file_sx");

}
-------------------------
输出:
$ java MonitorDirectory
br===fin_file_sx
1
over...
now sleep
----------------------------
试了很多遍了,就是不执行shell文件............怪啊