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

powershell 学习群

  •  
  •   ps1aniuge · 2019-04-21 23:00:43 +08:00 · 4419 次点击
    这是一个创建于 1803 天前的主题,其中的信息可能已经有所发展或是发生改变。
    问:天天有分享,周周脚本题,的 powershell 学习研究群在哪?
    答:
    QQ 群号=183173532
    名称=powershell 交流群


    问:群有什么特色?
    答:
    一群 powershell 脚本专家。
    专门教学 win,linux,powershell 脚本。特色是 linux 版 powershell。
    群内人员编写,分享的教程。随时更新。



    问:powershell 有什么特色?
    答:
    跨平台。win,linux,mac,树莓派,docker。
    面向对象。远程面向对象。
    比 shell 功能强,比 py 更适合于脚本开发者。
    调试功能强,是 shell 的 20 倍。
    第 1 条附言  ·  2019-04-22 14:37:40 +08:00
    很久很久以前,在一个未知位面上,有一个 [脚罗大陆] 。

    大路上的人,不修炼斗气,只修炼 [脚气] 。和凡人相比,修炼 [脚气] 的人统称为脚师。
    ---地球上斗气修士估计都去保安公司,或去当古惑仔去了。


    脚师根据等级,可分为:脚盲流,脚夫,脚师,脚帝,脚圣,脚斗罗,封号脚斗罗。脚尊。脚神。

    [脚罗大陆] 上有一个最为强大也是最重要的宗门—— powershell 脚魂派。

    大陆上的每个人,在自己六岁的时候,都可以在 [神秘的 powershell 脚尊交流圣殿] 中触碰 [ps 魂石] ,魂石可以令他的 ps 灵魂觉醒。

    觉醒后的 ps 灵魂有属性,有方法,有命令,有函数,有 wmi,它们可以辅助人们的日常生活。

    只要那人 ps 灵魂一觉醒,立马晋升为 [入门级 ps 脚本师] 。

    在 ps 脚本师行业里,没有奇怪的<,没有<<<,也没有 EOL,却有神奇的对象。

    每位脚师想要晋级,必须去脚罗大陆深处的难题森林中,猎杀凶兽,获取脚环。
    杀死一头 [百年脚本难题兽] ,可以获得黄色脚环。
    而杀死一头 [千年脚本难题兽] ,可以获得红色脚环。

    哪怕是 [万年脚本难题兽] ,遇到扛 powershell 的,都得立马下跪,因为 powershell 是屠龙刀,宰脚刀;)

    问:去哪找 [神秘的 powershell 脚尊交流圣殿] ?
    答:
    16 条回复    2020-08-26 20:53:52 +08:00
    nanaw
        1
    nanaw  
       2019-04-21 23:17:53 +08:00 via Android
    PowerShell 写脚本或许很强大,但命令行下真的很难用。命令,参数又臭又长大小写和横线。自动补全还捉鸡的不行。
    hellojinjie
        2
    hellojinjie  
       2019-04-21 23:20:55 +08:00
    这命令和参数真的不是一般的难记
    geelaw
        3
    geelaw  
       2019-04-21 23:30:43 +08:00
    Disclaimer: 我对这个群完全不感兴趣。

    @nanaw #1 如果你想要传统 Unix shell 一样 cryptic 的用法也是可以的,因为命令和参数都可以缩写,此外我不懂横线怎么能是一个问题,而且命令和参数都是不区分大小写的,所以我也不能理解这怎么能是一个问题,尤其是你已经限定场景为“命令行”(交互式)。

    @hellojinjie #2 实际上 native utilities 的参数更难记住。此外 Get-Help 的帮助文档非常全面。
    ps1aniuge
        4
    ps1aniuge  
    OP
       2019-04-21 23:41:10 +08:00
    原来大家对 powershell 有这些看法。看来我要写一些帖子说明。我打算发在 linux 版,敬请期待。
    nanaw
        5
    nanaw  
       2019-04-21 23:48:27 +08:00
    @geelaw #3
    1. 只有一部分可以缩写。
    2. 命令区分大小写,参数不清楚。
    比如我用自带的 PakageManagement 安装个软件包
    $Install-Pakage 7zip
    这样子,小写了就会出错,自动补全会直接补完( Install-Dtc ),需要不停的按 tab 才会按首字母顺序往下来,而不是 bash 那样补到确定的为止。
    geelaw
        6
    geelaw  
       2019-04-22 00:00:35 +08:00
    @nanaw #5 你可以在 $PROFILE 里面设置你想要的缩写,我实际上在 macOS 的 $PROFILE 里面把所有的 Windows PowerShell 缩写都加回来了。

    另外不存在 Install-Package 写成小写会出错的情况,如果存在且 Install-Package 是一个 cmdlet/function,那这是 PowerShell 的 bug。

    我实际上很不喜欢 bash 补成目前可确定的最长前缀,因为如果我写 install- 再按 Tab,那么补全不会有任何进展,这点在补全路径上有很大的问题(尤其是一个文件名是另一个的前缀时)。我不知道这个是否可以调整( macOS 下我不知道怎么让它恢复 Windows PowerShell 的默认行为)。不过这个是个人偏好,agree to disagree。
    nanaw
        7
    nanaw  
       2019-04-22 00:08:40 +08:00   ❤️ 1
    @geelaw
    1. 说它难用当然主要指默认状态下,自己定制当然会提高体验,但这不影响它本身很难用。。
    2. https://i.loli.net/2019/04/22/5cbc9496e6dc6.png 其他的也有不少命令如此
    3. 主要是习惯了 bash 那种补全。这玩意的补全一是很卡,按下 tab 要等 2 秒才出来(不知道什么原因),搞得我会按很多遍或者怀疑自己拼错。而且他按字母顺序排序补全出来我也不知道要按多少下,很不爽。
    bash 里面就算没有连按两下虽然“哔”一声有点不爽但会列出来可能的选项。当然补全体验还是 zsh 更好。
    nanaw
        8
    nanaw  
       2019-04-22 00:10:37 +08:00
    @nanaw #7 噢突然发现上一个是我拼错了,但命令这么长还要横线也够讨厌了。。
    GM
        9
    GM  
       2019-04-22 00:21:38 +08:00
    一直想学来着。
    参数长怎么说呢,双刃剑吧,写的时候烦,读时候爽。
    wspsxing
        10
    wspsxing  
       2019-04-22 05:33:28 +08:00 via Android
    个人觉得吧,,会 c 艹艹或者得用 windows 的可以学一学,,其它平台的 fish (交互式),python 之类更好用
    lihongjie0209
        11
    lihongjie0209  
       2019-04-22 08:46:39 +08:00
    Name : bash
    Arch : x86_64
    Version : 4.2.46
    Release : 31.el7
    Size : 3.5 M

    ---------------------

    Name : zsh
    Arch : x86_64
    Version : 5.0.2
    Release : 31.el7
    Size : 5.6 M


    -----------------------


    Name : powershell
    Arch : x86_64
    Version : 6.2.0
    Release : 1.rhel.7
    Size : 55 M

    这个安装包的大小有点吓人
    DAPTX4869
        12
    DAPTX4869  
       2019-04-22 09:28:07 +08:00
    要不是博登 VMware 上只能用 powercli 管理,这破玩意完全不想碰,py 真香
    wampyl
        13
    wampyl  
       2019-04-22 10:04:10 +08:00
    已经满员了
    Greenm
        14
    Greenm  
       2019-04-22 12:53:07 +08:00 via iPhone
    如果我没记错的话,楼主之前的帖子里火药味非常的浓,建议大家在入群之前先看看上个帖子里楼主的言论和观点,以免给自己带来不快。
    ps1aniuge
        15
    ps1aniuge  
    OP
       2019-04-23 14:16:05 +08:00
    问:powershell 区分大小写么?
    答:
    powershell 命令名,powershell 参数名,不区分大小写。但是你输入的参数值,是区分大小写的。
    win,linux,中的文件名写入=保留大小写。
    win 文件名读取=不区分大小写。
    linux 文件名读取=区分大小写。



    问:powershell 命令为啥那么长?
    问:powershell 命令会重名吗?
    答:
    微软为了 powershell 命令不重名,所以把 powershell 命令搞的很长。鱼与熊掌。
    但如果使用了第三方模块,还有可能重名。
    如:
    carbon 模块中,有 get-schcduletask 命令。
    内置的 ScheduledTasks 模块中,也有此命令,
    这就尴尬了,命令重名了,你喊声悟空,六耳猕猴跑过来了。你喊声疯子,特-朗 /普跑出来了
    不过,人家教我一招:
    Microsoft.PowerShell.Management\Get-ChildItem

    即先敲入 [模块名] ,再敲入 [\] ,然后再敲 [命令名] ,当然可以用 tab 补全。
    这招太好了,相当于详细门牌号,两个命令名完全一样(命令冲突)也不怕了。不过命令名就更长了。
    install-module -AllowClobber 就是(安装模块时)允许重复的命令名的意思。
    BiaoGuo
        16
    BiaoGuo  
       2020-08-26 20:53:52 +08:00
    就是一个邪教群,没太大的用处。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3661 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:51 · PVG 08:51 · LAX 17:51 · JFK 20:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.