I'll assume that the CSV file contains the names of the VCs.
Then you can do something like this provided you have a header row in the CSV that says "VCname"
Import-Csv "C:\cvname.csv" | %{
Connect-VIServer -Server $_.VCname
Get-VmHost | New-Datastore -Nfs -Name NFSds -Path NFSds -RemoteHost <NFSserver> -RemotePath <NFSexport>
}
If there is no header row you can do
Import-Csv "C:\cvname.csv" -Header MyVC | %{
Connect-VIServer -Server $_.MyVC
Get-VmHost | New-Datastore -Nfs -Name NFSds -Path NFSds -RemoteHost <NFSserver> -RemotePath <NFSexport>
}
This assumes that the account with which you execute the script has rights on all the VCs.
The Connect-ViServer uses passthrough authentication.