Edit: it's 2016 now and I still have to deal with these. I now think that cronjobs on the hosts are not reliable at all. The tool I now use to get lists and run basic tasks is govc, vmware's official open source project written in go (cross platform, single binary): https://github.com/vmware/govmomi/blob/master/govc/README.md
I have a cronjob doing this for me on a regular basis (ESXi comes with ESXi shell which might be more familiar for Linux users).
The command is
vim-cmd vmsvc/getallvms | grep -v Vmid | awk "{print \$2}"
grep
here just removes the header.
Both shell and ssh server should be enabled in order for this to work.
I also run this command before running ghettoVCB so that I always backup all of the machines, no matter if any of them had been migrated or created recently.