现在 PowerShell 是不是没有什么用?

2022-03-05 13:53:33 +08:00
 fengsien1999

是不是掌握 Linux 的 Shell 就可以了?

12882 次点击
所在节点    PowerShell
77 条回复
fengsien1999
2022-03-06 16:43:02 +08:00
@jim9606 服务器运维的岗位在国内是不是很少?
imn1
2022-03-06 17:05:30 +08:00
linux shell 背后有很多命令行工具依靠组成的
powershell 背后是.net

例如,linux 命令行下载,更多是依靠 wget 之类,powershell 则是依靠.net 的网络组件
还有一些文件内容相关的,例如编码、crc32 、文件比较,只有 shell 没有相关工具也是很难

引申就是学习成本,单纯 shell 学得很快,然后做事查各个工具的手册,powershell 学得慢,因为还要学.net 的基础知识
james122333
2022-03-06 19:11:58 +08:00
就算这工具有 linux 版也不会去使用 真的不如直接写其它语言 而且 shell 已经够 power
我都有一个自己的库 也实现了命名空间
对象功能正在研究
janxin
2022-03-06 19:28:44 +08:00
windows 运维缓缓打出个?
playboy0
2022-03-06 19:43:09 +08:00
想学 powershell 只能看官方文档吗,感觉视频资料很少啊
tankren
2022-03-06 19:54:40 +08:00
公司里面挺好用的 增强生产力
fengsien1999
2022-03-06 20:07:08 +08:00
@playboy0 有书
CallMeReznov
2022-03-06 21:05:56 +08:00
powershell 是微软这些年开始干正事的第一个作品.
alsas
2022-03-06 22:34:13 +08:00
复杂的 shell 直接用 python 代替
FrankHB
2022-03-06 22:36:04 +08:00
这不是现在的问题,以前的分析 https://www.v2ex.com/t/743334#r_10060656 仍然适用。

长话短说:只会习惯 Windows 体系的运维或许有用。

别的地方用没用另说,但有时候显然不如不用。
就不适合开发人员写脚本,再补个以前遇到的案例: https://github.com/flutter/flutter/issues/12666#issuecomment-636497901
很显然 PowerShell 脚本的作者没考虑到一些日常应该考虑到的简单情况,结果让行为变得极其愚蠢。
这不是说 bug 就是 PowerShell 特供的,但事实上这个功能在对应的 UNIX shell 脚本里就没问题。这间接体现出保证 PowerShell 脚本质量大约比 UNIX shell 更困难,即便后者坑已经够多了。
况且要求装个 pwsh 只是勉强算简便,实际装的东西比起 MSYS 之类也并不轻便(还是隐含.NET 依赖的情况),还不提 MSYS 普遍比 pwsh 甚至系统自带的 PowerShell 的可用性都好。(现在 Windows 都自带 curl ,写个一行安装 MSYS2 的也不是不行,PowerShell 这时候比 cmd 方便的地方就更像当年 Edge“用来下载别的浏览器的浏览器”了。) Windows 开发者的确也有不少和 LZ 现在这样想的更熟悉类 UNIX shell 懒得碰 PowerShell 来偷懒的,特别是不愿意依赖.NET 这种精神 COM 包袱的纯粹本机开发者和跨平台开发者。所以说即便照顾 Windows 用户,PowerShell 这个选项也基本是多余的。
这也再次显示出 PowerShell 提供的不同的 shell 特性并不能有效地防止一些编程错误,需要正经的脚本程序不如用健全一点的常规“脚本语言”。
fsdrw08
2022-03-06 23:01:34 +08:00
@Tumblr 感觉你好像是在找我啊…我敢说自己精通 powershell ,英语没问题,对,我就是外企 HelpDesk
raptor
2022-03-07 10:01:19 +08:00
70 楼说得很清楚。

很多年前就听说 PS 号称很 NB ,比 SHELL 强一百倍啊一百倍,结果前一阵听几个老司机私下吐槽才知道,居然有不少在 SHELL 里很简单常用的功能,居然在 PS 里要写一大堆代码(有些还是微软官方答复)。看来所谓好用不过是操作 windows 特有功能时方便。
dawangyezi
2022-03-07 10:19:34 +08:00
我近一年一直在做 windows 游戏开发。经常用到 ps 做自动化的一些东西。习惯了就觉得蛮好用的。
有没有用毕竟是看使用场景的嘛。如果你经常在类 unix 机器上开发,那肯定觉得不如 bash ,zsh 这些好用。
因为微软官方为 ps 提供跨平台的实现。所以一些跨平台的脚本也可能是使用 ps 的。
我知道的应用场景里面,亚马逊云的 lambda 就提供了 ps 作为一种内置提供的 runtime ,而不是 bash ,zsh 这些。
wangtian2020
2022-03-07 10:55:02 +08:00
至少可以替代 cmd ,vscode 的 powershell 明显比 cmd 好用
visonnn
2022-03-07 15:23:05 +08:00
管理 AD 、Exchange 、Microsoft 365 的大量操作都需要 PowerShell 啦。

确实像上面有老哥说的,面向工资的话没什么需要学。
asm
2022-03-07 17:10:45 +08:00
现在好多恶意代码都开始用 powershell 写了,闹呢~~
ltkun
2023-08-28 10:13:08 +08:00
@Tumblr #53 现在还会有人选 windows 服务器 早二十年我说不定会信 甭管你服务器做什么用途

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/838173

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX