You could do something like this
Get-VM -PipelineVariable vm
|ForEach-Object -Process {
$vmx = $vm.ExtensionData.LayoutEx.File | where{$_.Type -eq 'config'}
$src = $vmx.Name
$dst = $src -replace '.vmx','_suffix.vmx'
$dc = Get-Datacenter -VM $vm
$fileMgr = Get-View FileManager
$fileMgr.CopyDatastoreFile($src,$dc.ExtensionData.MoRef,$dst,$dc.ExtensionData.MoRef,$false)
}