Depends on how you type your files and read music, I guess. As a singer I learned reading music relatively so it is more natural for me and i exclusively use \relative mode. But I agree there are limitation like Kieren second example with split voices: I always expect the note before the split to be the reference.
About barchecks, it is doable with unix commands (sed, grep, etc.) but it is not very flexible. Attached *very* naive script does only work when there is one | for each measure (so R1*n unallowed) and one measure per line, and one file for each voice. Then deleting measure x to y can be easily done with the second attached script.
Cleaning old measure with sed 's/%{ [0-9]* %}//' and rerun number_measure.sh.
But the best would be to interpret directly each measure based on \time but bash is really not designed for this.
Calixte.