tdols.pp 698 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. {%norun}
  2. {%neededafter}
  3. program dols;
  4. {$mode objfpc}
  5. uses sysutils;
  6. var
  7. Idx,Count : integer;
  8. Dir : String;
  9. Info : TSearchRec;
  10. Long : Boolean;
  11. begin
  12. Dir:=GetCurrentDir;
  13. Idx:=1;
  14. if ParamStr(Idx)='-l' then
  15. begin
  16. Inc(Idx);
  17. Long:=True;
  18. end;
  19. if ParamStr(Idx)<>'' then
  20. Dir:=ParamStr(Idx);
  21. Dir:=IncludeTrailingPathDelimiter(Dir);
  22. Count:=0;
  23. If FindFirst(Dir+AllFilesMask,faAnyFile,Info)=0 then
  24. try
  25. Repeat
  26. if Long then
  27. Write(Info.Size:14,' ',DateTimeToStr(Info.TimeStamp));
  28. Writeln(Info.Name);
  29. Inc(Count);
  30. Until FindNext(Info)<>0;
  31. finally
  32. FindClose(Info);
  33. end;
  34. Writeln('Total: ',Count);
  35. end.