At very worst you could SSH to localhost and X11-forward to the same host -- but you can optimize that.
I don't use a particularly fancy WM/DE under Linux but it's the little things such as middle click paste, and window operations such as maximize horizontal/vertical (by using the middle and right mouse buttons) that I miss.
It amazes me that people will rag on linux because its "hard" and then build these elaborate Rube-Goldberg machines to avoid the most obvious solution.
It amazes that people don't understand that one's usage patterns might be different, so "just use Ubuntu" wouldn't be applicable (e.g. UNIX savvy guy who appreciates the shells and userland, but nevertheless wants to do Windows .NET development, or work with native and proprietary Windows programs the rest of the time).
All the yakka spent on avoiding the obvious solutions to justify "usage patterns", should signal any half-aware dev that those precious patterns are broken.
And when I'm stuck on Windows for whatever reason, I'll be immensely grateful to be able to do that with a bash shell and all my normal configuration and tools.
Still missing the fact that he could be needing them 24/7 for his work...
Check out XMing.
apt, ssh, rsync, find, grep, awk, sed, sort, xargs, md5sum, gpg, curl, wget, apache, mysql, python, perl, ruby, php, gcc, tar, vim, emacs, diff, patch...
RDP, Robocopy, Find.exe, Sort-Object, Select-Object, Select-String, Invoke-WebRequest, Invoke-RESTMethod, IIS, .NET, CMD, ASP.NET, and Compare-Object will fill most of those needs.
And Powershell accepts "cat" if "gc" for "Get-Content" is too long. Or "ls" if "dir" or "gci" for "Get-ChildItem" is too long. And each of these is a case-insensitive object you can pipe right into ConvertTo-Html or Send-MailMessage.
Or you can create a UDP socket with .NET right from Powershell, and send your objects that way.
https://juliankay.com/development/setting-up-vim-to-work-wit...