1 package list; 2 3 import java.io.File ; 4 import java.util.Collection ; 5 import java.util.Iterator ; 6 7 import org.apache.commons.cli.CommandLine; 8 import org.apache.commons.cli.CommandLineParser; 9 import org.apache.commons.cli.GnuParser; 10 import org.apache.commons.cli.HelpFormatter; 11 import org.apache.commons.cli.Option; 12 import org.apache.commons.cli.OptionBuilder; 13 import org.apache.commons.cli.Options; 14 import org.apache.commons.cli.ParseException; 15 16 public class Main { 17 private static Options getOptions() { 18 Option dir = OptionBuilder.withArgName( "dir" ) 19 .hasArg() 20 .withDescription( "list files in given dir" ) 21 .create( "dir" ); 22 Options options = new Options(); 23 24 options.addOption(dir); 25 26 return options; 27 } 28 29 public static void main(String [] args) throws Exception { 30 Options options = getOptions(); 31 try { 32 33 CommandLineParser parser = new GnuParser(); 34 35 CommandLine line = parser.parse( options, args ); 36 File dir = new File (line.getOptionValue("dir", ".")); 37 Collection files = ListFile.list(dir); 38 System.out.println("listing files in "+dir); 39 for (Iterator it = files.iterator(); it.hasNext(); ) { 40 System.out.println("\t"+it.next()+"\n"); 41 } 42 } catch( ParseException exp ) { 43 System.err.println( "Parsing failed. Reason: " + exp.getMessage() ); 45 46 HelpFormatter formatter = new HelpFormatter(); 47 formatter.printHelp( "list", options ); 48 } 49 } 50 51 } 52 | Popular Tags |