Reading the documentation of the epylint.lint
function:
When run from emacs we will be in the directory of a file, and passed its filename.
If this file is part of a package and is trying to import other modules from within
its own package or another package rooted in a directory below it, pylint will classify
it as a failed import.
To get around this, we traverse down the directory tree to find the root of the package this
module is in. We then invoke pylint from this directory.
Finally, we must correct the filenames in the output generated by pylint so Emacs doesn't
become confused (it will expect just the original filename, while pylint may extend it with
extra directories if we've traversed down the tree)
It sounds like it has to do some extra magic to work within Emacs. It doesn't look like you can run it the same way from the command line.
Is it not working for you from within Emacs? It might be a bug in pylint then. Does pylint have a mailing list you can report issues to?