Skip to content

Scan changes in file structure within the specified directories

License

Notifications You must be signed in to change notification settings

AshurAxelR/FolderScan

Repository files navigation

FolderScan

FolderScan is a tool for quick scanning for changed files within the speficied folders, comparing the current structure to a previously created snapshot. The tool uses modification date/time and file size information provided by the system to detect modifications, it does not calculate file hashes.

Since version 1.1: difference view in GUI mode.

Screenshot

The list of directories to scan are specified in a config file. The directories are scanned recursively. Example config file:

D:/Workspace

ignore:
*/.git
*/.metadata
*/.recommenders
*/bin

To use it, rename to folderscan.cfg. In this example, the tool will scan D:/Workspace ignoring folders named .git, .metadata, etc. Please note, that the ignore filter is only applied to folders, not files!

Since version 1.1.2: support for .noscan files. Add an empty .noscan file in any folder, and the folder will be ignored regardless of the config.

Download

JAR file: folderscan.jar (284 KB)

Using the tool

Examples of typical uses, running from command line:

Create a snapshot

java -jar folderscan.jar -nogui -nocmp -save

The program will scan the directories listed in folderscan.cfg and save snapshot to folderscan.data in the current directory. -nocmp option means that there is no need to load the previous snapshot and do comparison. -nogui option supresses launching GUI window. GUI is needed to view comparison results.

The snapshot contains file names, sizes, and modification timestamps for all files in subdirectories. Contents of the files are not processes or saved. The snapshot is zipped but not encrypted!

Scan and compare (default mode)

java -jar folderscan.jar

This is the same as double-clicking the JAR file in the file explorer.

The program will scan the directories listed in folderscan.cfg and compare to a snapshot previously saved to folderscan.data.

Save as another snapshot

java -jar folderscan.jar -nogui -nocmp -out mysnapshot.data

The program will scan the directories listed in folderscan.cfg and save snapshot to a specific file (mysnapshot.data in this case). -nocmp option means that there is no need to load the previous snapshot and do comparison. -nogui option supresses launching GUI window. GUI is needed to view comparison results.

The snapshot contains file names, sizes, and modification timestamps for all files in subdirectories. Contents of the files are not processes or saved. The snapshot is zipped but not encrypted!

Scan and compare to another snapshot

java -jar folderscan.jar -in mysnapshot.data

The program will scan the directories listed in folderscan.cfg and compare to a snapshot previously saved to mysnapshot.data.

Compare between two snapshots

java -jar folderscan.jar -in folderscan.data -alt mysnapshot.data

The program will load two specified snapshots (folderscan.data and mysnapshot.data) and compare them, showing results in the GUI window. There is no scanning in this case.

Command Line Options Summary

Usage:

java -jar folderscan.jar [options]

Options:

option description
-nogui Do not open GUI window.
-cfg filename Load config from filename. If not specified, folderscan.cfg will be used.
-d path Recursively scan specified directory. Config is ignored.
-out filename Write scan snapshot to a file.
-save Write scan snapshot to folderscan.data. Same as -out folderscan.data.
-in filename Load snapshot from filename.
By default, folderscan.data is loaded unless -nocmp is specified.
-alt filename Load another snapshot from filename.
Can be used to compare between two snapshots.
-nocmp Do not compare.
-help Show command line options and quit.

GUI Mode

GUI window shows the list of scanned directories. Parent directories are shown on top of the list, followed by subdirectories, and then regular files.

  • LMB a directory to open it.
  • RMB drag or mousewheel to scroll the list.
  • MMB or Ctrl+LMB to mark or unmark a file/directory. Marks have only visual effect and no other function. Marks are not saved between sessions.

Listed file/directory details:

  • Name
  • Size
  • (diff) shows the change in size compared to the previous snapshot.
  • Files (directory only) shows the total number of files in all subdirectories.
  • Add/Mod/Rem for directories: shows the total number of added/modified/removed files; for files: a checkmark shows if the file was added, modified, or removed since the snapshot.
  • Last modified shows modification timestamp (for a file) or latest modified file timestamp (for a directory).
  • Mark shows user marks.

You can click a column header to sort by that property.