diff --git a/README.md b/README.md index 08e6789..7786b67 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ chkbit is independent of the file system and can help you detect bitrot on you p 0 bits flipped | 1 bit flipped | 2 bits flipped | 3 bits flipped -------------- | -------------- | -------------- | -------------- -![](https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Bitrot_in_JPEG_files%2C_0_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_0_bits_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Bitrot_in_JPEG_files%2C_1_bit_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_1_bit_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/3/37/Bitrot_in_JPEG_files%2C_2_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_2_bits_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Bitrot_in_JPEG_files%2C_3_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_3_bits_flipped.jpg) | +![](https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Bitrot_in_JPEG_files%2C_0_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_0_bits_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Bitrot_in_JPEG_files%2C_1_bit_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_1_bit_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/3/37/Bitrot_in_JPEG_files%2C_2_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_2_bits_flipped.jpg) | ![](https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Bitrot_in_JPEG_files%2C_3_bits_flipped.jpg/180px-Bitrot_in_JPEG_files%2C_3_bits_flipped.jpg) | Data degradation (aka bitrot) is the gradual corruption of computer data due to an accumulation of non-critical failures in a data storage device. It results from the gradual decay of storage media over the course of years or longer. Causes vary by medium. @@ -59,7 +59,7 @@ Status codes: ROT: error, bitrot detected EIX: error, index damaged old: warning, file replaced by an older version - add: add to index + new: new file upd: file updated ok : check ok skp: skipped (see .chkbitignore) diff --git a/chkbit/index.py b/chkbit/index.py index e4740fe..b7780d1 100644 --- a/chkbit/index.py +++ b/chkbit/index.py @@ -6,7 +6,7 @@ import json from enum import Enum from chkbit import hashfile, hashtext -VERSION = 2 # index version +VERSION = 2 # index version INDEX = ".chkbit" IGNORE = ".chkbitignore" @@ -15,7 +15,7 @@ class Stat(Enum): ERR_BITROT = "ROT" ERR_IDX = "EIX" WARN_OLD = "old" - ADD = "add" + NEW = "new" UPDATE = "upd" OK = "ok " SKIP = "skp" @@ -46,7 +46,7 @@ class Index: def should_ignore(self, name): for ignore in self.ignore: if fnmatch.fnmatch(name, ignore): - return True + return True return False def _setmod(self): @@ -66,7 +66,7 @@ class Index: def check_fix(self, force): for name in self.new.keys(): if not name in self.old: - self._log(Stat.ADD, name) + self._log(Stat.NEW, name) self._setmod() continue diff --git a/chkbit/main.py b/chkbit/main.py index 0d1742e..e3f8428 100644 --- a/chkbit/main.py +++ b/chkbit/main.py @@ -11,7 +11,7 @@ Status codes: ROT: error, bitrot detected EIX: error, index damaged old: warning, file replaced by an older version - add: add to index + new: new file upd: file updated ok : check ok skp: skipped (see .chkbitignore) @@ -35,7 +35,7 @@ class Main: else: if stat in [Stat.ERR_BITROT, Stat.INTERNALEXCEPTION]: self.err_list.append(path) - if stat in [Stat.OK, Stat.UPDATE, Stat.ADD]: + if stat in [Stat.OK, Stat.UPDATE, Stat.NEW]: self.total += 1 if self.verbose or not stat in [Stat.OK, Stat.SKIP]: print(stat.value, path) @@ -101,7 +101,9 @@ class Main: def print_result(self): if not self.quiet: - print(f"Processed {self.total} file(s).") + print( + f"Processed {self.total} file(s){' in readonly mode' if not self.args.update else ''}." + ) if self.modified: print("Indices were updated.")