Unlock is quite heavy in terms of I/O and thus waiting time, so we (in datalad) probably should provide also a progress bar indicator.
how could I obtain a list of files which would be unlocked given a set of paths?
could there be a --json mode of output (consistent with add --json etc)?

git annex unlockonly operates on files that are symlinks and link to .git/annex/objects. I don't think thatfindprovides a way to check the link target of a symlink, so you'd have to write a program to do it. I suppose thatgit annex find --lockedcould be made to do that.git annex unlockoften has to make a copy of the content of a file, which would be the majority of its IO. Only if you're usingannex.thinwith v6 might it not need to copy the file, and then a batch mode could speed it up. Are you?