3 ms·
I am a C# programmer at heart, and I use powershell a good bit. I can honestly say I can never use powershell without my cheat sheets or my list of favorite com
by sixothree 4y ago
I am a C# programmer at heart, and I use powershell a good bit. I can honestly say I can never use powershell without my cheat sheets or my list of favorite commands (and especially the arguments to use).
I looked at this and kinda get it and think I could do some things with it. I don't think it's as powerful and can _definitely_ say it won't be capable of the same automations we use.
That said, the text parsing people do with bash makes me cringe. It's so repulsive and sketchy. Anything to get linux world off of bash would be a good thing.
- vips7L 4y agoDo you use pwsh as your daily driver? I find that its commands are as easily memorable as any other shell. That being said You should enable these: Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete Set-PSReadLineOption -PredictionSource History MenuComplete will give you a menu of arguments that each command takes so you can easily see them when pressing tab for completions and prediction source will try to predict the commands you want based on your history.
- juki 4y agoAlso make sure you're on latest version of PSReadLine (I had some problems with it not updating properly and had to do a manual `Install-Module PSReadLine -Force`) and try Set-PSReadLineOption -PredictionSource HistoryAndPlugin -PredictionViewStyle ListView You can also toggle between the default inline and listview with F2. Also if you install Install-Module CompletionPredictor and add this to your profile: Import-Module -Name CompletionPredictor Set-PSReadLineOption -PredictionSource HistoryAndPlugin -PredictionViewStyle ListView you also get the normal intellisense autocompletions in the listview. And remember that if you have all the help files installed locally you can use F1 to view help for the current parameter/command.
- vips7L 4y agoThanks! I haven't seen CompletionPredictor before. I'll give it a shot.
- deafpolygon 4y ago/mind blown/ very nice.
- papascrubs 4y agoBeen using the latest PSReadline but CompletionPredictor is awesome and exactly what I've been looking for. One other PowerShell protip Ctrl+Space is also another great shortcut for completing commands, it lets you see what type a parameter is expecting etc. $ Get-ChildItem -<ctrl+space> Path Depth File ErrorAction <snip> [string[]] Path
- chasil 4y agoThis is a common complaint among implementers of POSIX shells. They are not LR-parsed languages, and cannot be expressed with yacc grammars. Debian dash replaced bash as /bin/sh. It gains speed, but no better syntax. https://archive.fosdem.org/2018/schedule/event/code_parsing_posix_s_hell/ https://archive.fosdem.org/2018/schedule/event/code_parsing_...
- ripley12 4y ago> can _definitely_ say it won't be capable of the same automations we use. Anything in particular you think would be difficult/impossible in Nushell? (I'm one of the Nushell developers, might be able to help or put features on the roadmap)
- sixothree 4y agoHonesty, I believe this because of the maturity of powershell and not any inability in nushell. Having literally the number of commandlets and having entire .net framework available makes powershell have more options. Additionally, pretty much every Windows Server feature is commandable with powershell. Some (much?)_ of the UI stuff in windows is just using powershell under the hood. That said. I am _very much_ looking forward to using nushell when I use linux or wsl. And I wish your team great success. Linux needs it.
- ripley12 4y agoYeah, we're probably never going to be able to compete with PowerShell's sheer volume of Windows integration points. Shelling out to pwsh is probably the best we can do in some situations.
- deafpolygon 4y agoI use pwsh as my daily driver, and the verbosity actually reduces my need for a cheatsheet. What I'd love is for Powershell to _stop_ adding .\ to my tab completed files. Just quote it and leave it alone, unless it's an executable. Once I got used to stuff parsing as objects, it's really hard to go back to everything-as-a-string in bash. I've gotten to writing a few personal scripts/modules.. processing stuff in JSON is just really nice.