V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ps1aniuge
V2EX  ›  PowerShell

powershell7 怎么样?听我给你吹!

  •  1
     
  •   ps1aniuge · 2019-05-31 12:32:14 +08:00 · 8349 次点击
    这是一个创建于 1763 天前的主题,其中的信息可能已经有所发展或是发生改变。
    跨平台.net core v3 的下一个版本是.net core v5,但是不叫 core 了,就叫.net v5。

    跨平台 powershell core v6 的下一个版本是 powershell core v7,但是不叫 core 了,就叫 powershell v7。

    powershell v7 preview1 现在发布。powershell v7 ga 正式版将在 2020 年末前发布。
    ==================

    https://github.com/PowerShell/PowerShell/releases
    ==================
    某天中午,我去小面馆吃碗刀削面。
    看到煮面锅前面,是一台削面机子,“两手”飞快削面。还可以像电风扇那样“摇头”削面。----这事绝对真实。

    “去年有个人工刀削面师傅,他好像叫 bash,他人呢?”对着削面机,我提出了疑问。

    “淘汰了”机械音答道?

    “淘汰了?啥时候淘汰的?这个世界变化太快”我嘀咕道。但是削面机只顾呼呼削面,并不理我。

    看到削面机这样对我,一气之下,我关了削面机,拆下削面刀,却给机子安装上 powershell。

    一开开关,只听机子上传来机械声音:
    “跨平台 powershell v7 preview1 安装启动正常,噢耶!用 powershell 屠龙刀,刀削面,面真香~”

    ---我吹的如何?谢谢观赏!---
    16 条回复    2019-10-30 18:41:07 +08:00
    Jirajine
        1
    Jirajine  
       2019-05-31 12:41:01 +08:00 via Android
    没有 IDE,终端下使用太反人类了。名称,参数又臭又长
    chenqh
        2
    chenqh  
       2019-05-31 12:42:58 +08:00
    但是 bash 用的人多呀,
    qcts33
        3
    qcts33  
       2019-05-31 12:46:09 +08:00
    @Jirajine 官方推荐的“ IDE ”似乎是 vscode
    DiamondbacK
        4
    DiamondbacK  
       2019-05-31 12:47:13 +08:00   ❤️ 1
    参数是长,但是不臭,是香的。
    jamesxu
        5
    jamesxu  
       2019-05-31 12:48:30 +08:00 via iPhone
    从来都不用,真要命令行处理还是 Linux 顺手
    qcts33
        6
    qcts33  
       2019-05-31 12:48:47 +08:00
    简单写过几个自己用的 PowerShell 脚本,感觉还可以。
    不过这个命名规则是受到 Java 的影响吗?一个比一个长……
    ps1aniuge
        7
    ps1aniuge  
    OP
       2019-05-31 13:07:21 +08:00
    https://www.v2ex.com/t/563986
    从“撸串.ps1 ”开始学习 [powershell 的参数补全]


    问:powershell 命令为啥那么长?我很不爽啊。
    问:powershell 命令会重名吗?
    答:
    powershell 命令太多,超过好几万。微软为了 powershell 命令不重名,所以把 powershell 命令搞的很长。
    正因为命令长,命令唯一,才让 ps 基本不需要像 python 那样,在脚本中 import 这个库、那个包。也没有 py 那种 [库或依赖] 路径问题。
    鱼与熊掌而已。唯一的长命令名,不需要学习记忆包名。
    实际上 linux 命令也很长。有很多子命令。比如
    kubectl expose deployment nginx --type=NodePort --name=example-service

    但如果使用了第三方模块,还有可能重名。
    如:
    carbon 模块中,有 get-schcduletask 命令。
    内置的 ScheduledTasks 模块中,也有此命令,
    这就尴尬了,命令重名了,你喊声悟空,六耳猕猴跑过来了。你喊声疯子,特 zz 朗 cc 普跑出来了
    不过,人家教我一招:
    Microsoft.PowerShell.Management\Get-ChildItem
    (这个命令就是 dir,在重名的时候才需要这样输入)
    即先敲入 [模块名] ,再敲入 [\] ,然后再敲 [命令名] ,当然可以用 tab 补全。
    这招太好了,相当于详细门牌号,两个命令名完全一样(命令冲突)也不怕了。不过命令名就更长了。
    install-module -AllowClobber 就是(安装模块时)允许重复的命令名的意思。
    jaylee77
        8
    jaylee77  
       2019-05-31 13:17:20 +08:00
    又见你这个傻屌
    yearliny
        9
    yearliny  
       2019-05-31 13:28:26 +08:00
    @Jirajine @qcts33 最开始对 PowerShell 的印象也是 cmdlet 命令和参数太长,直到有一天认真的了解了 PowerShell,发现这是它的一种设计哲学,这种命名方式使得其具有更好的可探索性、学习性,并且写出的脚本非常易读。当然这也牺牲了你所希望的简洁性。

    你也许会说,我又不是天天读脚本,因此 PowerShell 内置了大量的 Alias,简化操作,并且参数均支持简写,简写的参数需要具有最小长度的可分辨性。

    我 Bash 和 PowerShell 都用,目前 Windows 缺少好用的终端,这是值得吐槽的。PowerShell 写一些 Windows 系统管理或者 Office 操作方面的脚本,方便程度远远高于 Python。
    justin03
        10
    justin03  
       2019-05-31 13:31:26 +08:00
    我刚想说的,可以用 tab 啊。
    deorth
        11
    deorth  
       2019-05-31 15:00:45 +08:00
    配合 windows terminal 食用更佳?
    oukichi
        12
    oukichi  
       2019-05-31 15:46:11 +08:00
    @jamesxu 各有各的好处。
    yiyiwa
        13
    yiyiwa  
       2019-05-31 21:49:38 +08:00
    楼主我如何在我的 openwrt 上安装? 有 mips 版本的吗? 最好是 2M 大小,因为我的 flash 只有 8M,还有 4M 空间。谢谢!

    或者能帮忙编译一个? 如果能顺便写个过滤广告,自动 FWG 的,最好了。
    ps1aniuge
        14
    ps1aniuge  
    OP
       2019-06-02 12:58:55 +08:00
    openwrt 上安装? 有 mips 版本的吗?

    问:目前哪些 linux,可以通过 snap 包方式安装 powershell ?
    答:
    ◦Arch Linux/Fedora/elementary OS/OpenSuSE/Solus/Gentoo Linux/Debian/Linux Mit/Manjaro/OpenEmbedded/Yocto/OpenWrt/Raspbian 等任何支持 snap 包的发行版

    安装方法: (建议使用预览版,功能比较新,也没啥不稳定的)
    snap install powershell – classic #安装稳定版
    snap install powershell-preview – classic #安装预览版


    @yiyiwa 我没装过,不过应该可以。你配置好安装包源,安装下试试,装好了后,我给你写过滤脚本。
    fyzhu
        15
    fyzhu  
       2019-10-30 11:17:37 +08:00
    可以多选项卡吗
    ps1aniuge
        16
    ps1aniuge  
    OP
       2019-10-30 18:41:07 +08:00
    @fyzhu 没有,powershell7 中只有 [语法] 和 [命令] 。配合 win term,有选项卡。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3051 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 12:46 · PVG 20:46 · LAX 05:46 · JFK 08:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.