General Topics






Tips and How-To


IntegrityChecker java (icj): 'update', 'update-all', 'update-new' commands

You can update a single volume or a single folder, or any number and combination of volumes or folders at once.

The update command updates files and folders that:

Any number and combination of volumes or folders can be specified in a single invocation.

The update-new command updates files and folders that are new (have no hashes). Known files and folders are not examined even if they have changed data or size. Use the update-new command when it is desirable to include new files, but to verify known items separately.

The update-all command rehashes all files, whether or not a hash already exists, flagging changes appropriately for all files that already have hashes.

Command line usage

icj update [<path>]*


--optimize HDD|SSD
--threads num
--large-buffers num
--large-buffer-size MB


Lines starting with "#" are comments.

# Update the contents of the current directory — no arguments needed
icj update

# Update the contents of three folders in the current directory
icj update Folder1 Folder2 Folder3

# Update the contents of volume “Master”
icj update Master

# Update your Documents folder in your home directory:
icj update ~/Documents

# Update all volumes whose name includes "Clone" (macOS path form)
icj update /Volumes/*Clone*

# force to assume hard drive, reduce threads and buffers accordingly:
icj update --optimize HDD MyData

# control the CPU and memory usage manually with 2 hashing threads, 4 large buffers of 8MB each:
icj update --threads 2 --large-buffers 4 --large-buffer-size 8M MyData

Previous page: icj verify
Next page: icj clean