And I mean similar features, not Invoke-WebRequest, ftp, nslookup or writing my own clone in 2000 lines of Powershell.
And to this day I have no idea why telnet was removed from the base installation.
The Windows command line is getting better with Powershell, but even Powershell can't beat 1000 man years of tool development. And I really hope that package manager takes off cause right now most Windows non-Microsoft tools are either shady or crappy.
I'm only speculating, but I imagine telnet was removed because the security issues and misuse vastly outweighed the legitimate use by powerusers.
And I'm not really sold that an OS should ship with a bloated utility like modern wget rather than including a very lightweight downloader.
On the other hand, I think PowerShell is a vastly over-complicated and over-engineered response to the conceptually simple Unix shell, which is why most still favour the command line.
Removing telnet nudges people to completely stop using telnetd. I know there's a ton of embedded devices that require telnet, but these devices are increasingly going to become a liability and Microsoft probably made a good decision here.
That doesn't make sense. If I need to configure a switch, test an http server, or whatever it is I need telnet for, I'm going to download PuTTY. No (sane) person ever went "screw that, telnet is insecure, I refuse to do it".
dig's never been distributed with any Linux OS I've used. (Resolve-DnsName is in Powershell 4.0, which implements most of that functionality.) Nor has lftp. So we'll take those out of the running.
The vast majority of what wget and curl are used for is simply downloading single files/pages. Invoke-WebRequest does that fine. It also deals with poking at most web services you're likely to come across. What service can't you use with it?
As for telnet... the removal of that was ridiculous, I'll admit.
Not the same user, but I once tried to get PowerShell to do an ls over FTP for me, and even with copying some sample code it was horribly painful.
I can't speak from broad experience but my impression was that PowerShell does a bunch of common cases fairly well but if you want something a bit different you're bashing your head on your desk.
Powershell is a wonderful concept but the ecosystem around it, except for Microsoft's own extensions, hasn't really hit puberty.
Also try writing scripts which involve native Windows commands (such as robocopy & company). Things are definitely not intuitive and the error handling is crappy. You either stay within Powershell bounds and everything is wonderful, or you step out and are in a world of pain.
years ago I posted much the same sentiment on stack overflow when I was attempting to use Powershell 1 to build and deploy software that used SVN for it's SCM.
It was a pain in the neck and I felt like the PS integration was awesome as long as you stayed in that ecosystem, but the second you strayed... pain.
I got bashed fairly hard with the question I asked surrounding it closed as unconstructive (it was an honest question about exactly what PS was targetted towards).
wget or curl
lftp
dig
telnet
And I mean similar features, not Invoke-WebRequest, ftp, nslookup or writing my own clone in 2000 lines of Powershell.
And to this day I have no idea why telnet was removed from the base installation.
The Windows command line is getting better with Powershell, but even Powershell can't beat 1000 man years of tool development. And I really hope that package manager takes off cause right now most Windows non-Microsoft tools are either shady or crappy.