You can download images directly onto the datastore of an ESXi server by using wget, just as you would do on any other Linux Host

You just need to make a note of the path of the datastore which is typically inside /root/vmfs/volumes/

Enable SSH first by clicking Navigator > Host > Actions > Host > Services > Enable Secure Shell (SSH), which would be disabled by default, and its secure to disable it after the image upload

NewImage

$ ssh root@esxi-server
~TRUNCATED~
Password:
The time and date of this login have been sent to the system logs.

VMware offers supported, powerful system administration tools. Please
see www.vmware.com/go/sysadmintools for details.

The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.

Navigate to the datastore
[root@localhost:~] cd vmfs/volumes/
[root@localhost:/vmfs/volumes] cd datastore1/

Create a directory inside the datastore if desired
[root@localhost:/vmfs/volumes/some-hex-numbers] mkdir centos
[root@localhost:/vmfs/volumes/some-hex-numbers] cd centos

wget followed by the path where the image is stored

NewImage
[root@localhost:/vmfs/volumes/some-hex-numbers/centos] wget http://centos.mirror.snu.edu.in/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso
Connecting to centos.mirror.snu.edu.in (103.27.165.31:80)
CentOS-7-x86_64-Mini 1% |*

Wait till it reaches 100%

~end-of-post~