3 ms·
> Windows’ standard command shell is cmd.exe. Unfortunately this shell is terrible and exists mostly for legacy compatibility. For users who regularly need a sh
by josteink 6y ago
> Windows’ standard command shell is cmd.exe. Unfortunately this shell is terrible and exists mostly for legacy compatibility. For users who regularly need a shell, the intended replacement is PowerShell. It’s a significant improvement, but 1) it’s still mediocre, 2) sticking to POSIX shell conventions significantly improves build portability, 3) unix tool knowledge is transferable to basically every other operating system.
Powershell Core is actually available on quite a few posix-platforms and thus actually portable.
Obviously you’ll introduce a non-standard build-time dependency on Unix-platforms, but by adopting it at least you can slowly ween your Windows-only stuff in a generally more portable direction.
- majkinetor 6y ago> but 1) it’s still mediocre Ahahahhahhaha, that is insane.
- pjc50 6y agoEverywhere I've worked with Windows build systems I've got people to agree to transition their batch files to Python, which even without the portability question has much better fail-early error handling.
- josteink 6y agoI guess it depends on the team and thing being delivered. Powershell is built on .NET and shares the same types and BCL. If your team is a full .NET team, Powershell might actually be easier to transition to than Python where everything is going to be new or different.