某一目录如/home/下有一系列文件,如a09052011.txt,a08302011.txt,a09042011.txt等,文件命名规则为a+MMDDYYYY.txt,需要找出时间戳最大的文件,如本例a09052011.txt,谢谢
------解决方案--------------------
按照文件名排序
------解决方案--------------------
- Java code
Comparator<File> comparator = new Comparator<File>(){ public int compare(File file1, File file2){ DateForamt formatter = new SimpleDateFormat("MMddyyyy"); Date date1 = formatter.parse(file1.getName().substring(1)); Date date2 = formatter.parse(file2.getName().substring(1)); return date1.compareTo(date2); }}File file = new File("/home/");File[] files = file.listFiles();Arrays.sort(files,comparator);
------解决方案--------------------
------解决方案--------------------
一条语句里不好搞,写个小perl脚本轻松就搞定了
------解决方案--------------------
ls -a | sort -r | head -n 1
------解决方案--------------------
ls -A1rt | tail -n 1