小编Den*_*nis的帖子

Windows PowerShell 选项卡大小

我已经开始使用 PowerShell。

制表符大小为 8 个空格。

我不想要那个 - 我想要 4 个空格。

请问我该如何实现这个目标?

tabs powershell-ise

5
推荐指数
0
解决办法
1593
查看次数

Python 在 Windows 上启动缓慢

我注意到我的 Python 代码在 Windows 上运行的时间总是比在 Mac 上运行的时间长。有什么方法可以改善这一点吗?Windows机器非常强大,所以我不认为这是硬件问题(36核Xeon,96GB RAM,SSD)。Python 版本类似,我在 Windows 10 上运行 3.7.9,在 MacOS Mojave 上运行 3.7.7。
例如,一个简单的 print 语句需要花费 7 倍的时间。检查版本需要花费 12 倍的时间。
我卸载了 Windows 上的所有 pip 模块。

我正在尝试编写一些非常轻量级的脚本,其中快速运行时间很重要。

$ time python3 -c "print('hello world')"
hello world

real    0m0.030s
user    0m0.019s
sys     0m0.009s

$ time python3 --version
Python 3.7.7

real    0m0.015s
user    0m0.003s
sys     0m0.005s
Run Code Online (Sandbox Code Playgroud)

在 Windows 10 Powershell 上:

(Measure-Command {python -c "print('hello world')"}).TotalSeconds
0.2249363
(Measure-Command {python --version}).TotalSeconds
0.1776381
Run Code Online (Sandbox Code Playgroud)

编辑:我使用 SysInternals Process Monitor 捕获了事件,它显示了单次调用的 11,222 个事件python …

python

5
推荐指数
0
解决办法
1800
查看次数

如何将 powershell 哈希表转换为对象?

PowerShell 中的某些哈希表(例如使用 导入的Import-PowerShellDataFile哈希表)如果改为 PSCustomObject,则导航起来会容易得多。

@{
    AllNodes = @(
        @{
            NodeName = 'SRV1'
            Role = 'Application'
            RunCentralAdmin = $true
        },
        @{
            NodeName = 'SRV2'
            Role = 'DistributedCache'
            RunCentralAdmin = $true
        },
        @{
            NodeName = 'SRV3'
            Role = 'WebFrontEnd'
            PSDscAllowDomainUser = $true
            PSDscAllowPlainTextPassword = $true
            CertificateFolder = '\\mediasrv\Media'
        },
        @{
            NodeName = 'SRV4'
            Role = 'Search'
        },
        @{
            NodeName = '*'
            DatabaseServer = 'sql1'
            FarmConfigDatabaseName = '__FarmConfig'
            FarmContentDatabaseName = '__FarmContent'
            CentralAdministrationPort = 1234
            RunCentralAdmin = $false
        }
    );
    NonNodeData = …
Run Code Online (Sandbox Code Playgroud)

powershell hashtable pscustomobject

4
推荐指数
1
解决办法
7811
查看次数

如何指定 Powershell 列表属性的顺序

这是一个简短的脚本,给出了相关行为的示例:

$foo = New-Object -TypeName PSCustomObject -Property @{
    Username = "BSmith"
    OU = "Finance"
    Department = "Finance"
    Description = "Accounts"
    Office = "345 2nd St"
    ServerName = "WFINANCE"
    ShareName = "BSmith$"
    LocalPath = "E:\Users\BSmith"
    }

Write-Host $foo
Run Code Online (Sandbox Code Playgroud)

输出是:@{ServerName=WFINANCE; Office=345 2nd St; Username=BSmith; LocalPath=E:\Users\BSmith; OU=Finance; Description=Accounts; ShareName=BSmith$; Department=Finance}

正如您所看到的,输出变量的顺序与指定变量时给出的顺序不同。为什么会这样,如何使顺序一致?

我只有机会在一台计算机上对此进行测试,但输出的顺序在脚本的执行之间是一致的。我在声明属性时如何排序属性也没有什么区别。我无法测试并查看不同的机器是否会返回不同的订单。

arrays powershell

2
推荐指数
1
解决办法
9176
查看次数