标签: pipeline

Powershell:您如何在一个管道中读写I/O?

我希望能够键入快速,简单的命令来就地操作文件.例如:

# prettify an XML file
format-xml foo | out-file foo
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为管道设计为"贪婪".一旦上游cmdlet处理第一行输入,下游cmdlet就会获取对文件的写锁定,这会阻止上游cmdlet读取文件的其余部分.

有许多可能的解决方法:写入临时文件,将操作分成多个管道(将中间结果存储在变量中)或类似.但我认为这是一个非常普遍的任务,有人开发了一个快速,易于使用的快捷方式.

我试过这个:

function Buffer-Object 
{
    [CmdletBinding()]
    param (
        [parameter(Mandatory=$True, ValueFromPipeline=$True)]
        [psobject] $InputObject
    )

    begin { $buf = new-list psobject }
    process { $buf.Add($InputObject) }
    end { $buf }
}
format-xml foo | buffer-object | out-file foo
Run Code Online (Sandbox Code Playgroud)

在某些情况下它可以正常工作.映射到一个简短的别名并进入像PSCX这样的通用发行版,它对于快速交互式任务来说"足够好".不幸的是,似乎有些cmdlet(包括out-file)在Begin {}方法而不是Process {}中获取锁,因此它不能解决这个特定的例子.

其他想法?

powershell file-io pipeline

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

将剪辑滤镜应用于多个源

我在Paraview中有几个数据源,并将所有这些数据源(使用Clip过滤器)剪辑到我此刻需要查看的内容.将剪辑域设置为三次(或更多次)非常有意义.是否可以以某种方式共享这些参数,或将相同的过滤器实例应用于多个数据源?

pipeline paraview

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

text/html模板包中的"范围"操作和"管道"说明.Golang

我尝试在text/html模板包中获得一些优点.我从golang网站上读过它的文档.很难理解究竟是什么意思.(点)一般而且在范围动作的某个时间.究竟什么意思是"管道",也许很难理解,因为我的英语不是母语):

{{pipeline}}
The default textual representation of the value of the pipeline
is copied to the output.
Run Code Online (Sandbox Code Playgroud)

我们来看一个例子:

    data := map[string]interface{}{
        "struct": &Order{
            ID:     1,
            CustID: 2,
            Total:  3.65,
            Name: "Something",
        },
        "name1":  "Timur",
        "name2": "Renat",
    }
    t.ExecuteTemplate(rw, "index", data)
Run Code Online (Sandbox Code Playgroud)

这是"索引":

{{define "index"}}
    {{range $x := .}}
        {{.}}
        <b>{{$x}}</b><br>
        <i>{{$.struct.ID}}</i><br>
        <br>
        # the lines below don't work and break the loop
        # {{.ID}}
        # or
        # {{.struct.ID}}

        # what if I want here another range loop that handles "struct" members …
Run Code Online (Sandbox Code Playgroud)

templates pipeline go

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

HttpContext.Current如何处理IIS管道中的每个请求?

如您所知,HttpContext.Current返回应用程序管道中的当前上下文.
此属性也是static,因此逻辑上对该属性或其属性的任何更改都应该影响其他管道.

静态字段确切地标识一个存储位置.无论创建了多少个类实例,都只有一个静态字段的副本. 更多

IIS如何处理这个以防止其他管道上的冲突,并且HttpContext.Current每个管道上的每个管道都是唯一的?

例如,对于已登录系统的两个用户,将HttpContext.Current.User.Identity.Name给出将请求发送到服务器的用户的用户名.

ASP.NET管道:
在此输入图像描述

c# asp.net pipeline httpcontext

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

带Spacy管的多线程NLP

我正在尝试将Spacy NLP(自然语言处理)规则应用于诸如Wikipedia Dump之类的大文本文件。这是基于Spacy 文档示例的代码:

from spacy.en import English

input = open("big_file.txt")
big_text= input.read()
input.close()

nlp= English()    

out = nlp.pipe([unicode(big_text, errors='ignore')], n_threads=-1)
doc = out.next() 
Run Code Online (Sandbox Code Playgroud)

Spacy可一次应用所有nlp操作,例如POS标记,去胶化等。就像NLP的管道一样,它一步一步地满足了您的所有需求。应用管道方法可以通过对管道的昂贵部分进行多线程处理来使处理过程更快。但是我看不到速度有什么大的提高,我的CPU使用率大约是25%(只有4个内核之一在工作)。我还尝试以多个块形式读取文件并增加了输入文本的数量:

out = nlp.pipe([part1, part2, ..., part4], n_threads=-1)
Run Code Online (Sandbox Code Playgroud)

但性能仍然相同。无论如何,有什么加快的过程吗?我怀疑应该启用OpenMP功能来编译Spacy以利用多线程功能。但是没有有关如何在Windows上执行操作的说明。

python multithreading nlp pipeline spacy

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

来自JSON文件的Powershell Out-GridView

我想加载一个JSON文件并在powershell GridView中显示它.我希望这会奏效:

'[{"a":1,"b":2},{"a":3,"b":4},{"a":5,"b":6}]' | ConvertFrom-Json | Out-GridView
Run Code Online (Sandbox Code Playgroud)

但这只是向我展示了这个无益的观点: ogv输出 如何将列表转换为网格视图可以理解的内容?

powershell json pipeline

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

有状态功能管道

代码解释了自己.

val s = Seq(1,1,1)
val res: Seq[Int] = s.map(...)
                     .check(count how many 1s, if > 2 throw Exception)
                     .map(...)
Run Code Online (Sandbox Code Playgroud)

我正在寻找这个check功能的简单解决方案.

  • 我可以使用mapclosure计数和投掷,但我想要纯粹的功能.
  • 我可以使用filtersizereduce,但它返回一个值,不能用以下地图恢复.

如何做一个纯粹的有状态的检查,管管道?

closures functional-programming pipeline scala purely-functional

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

如何在Datafactory v2中导出管道或迁移到另一个管道

我正在尝试导出在datafactory v2中创建的一个管道或迁移到另一个管道,但找不到该选项,

请问你能帮帮我吗

pipeline azure azure-data-factory-2

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

当linting脚本返回错误时,如何使Azure DevOps Pipeline构建失败?

我正在使用Azure Pipelines GitHub加载项以确保提取请求能够通过我的操作。但是,我刚刚发出了一个测试请求请求,但失败了,但Azure Pipeline成功了。

这是我的 azure-pipelines.yml

# Node.js with React
# Build a Node.js project that uses React.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript

trigger:
- master

pool:
  vmImage: 'Ubuntu-16.04'

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '8.x'
  displayName: 'Install Node.js'

- script: |
    npm install
    npm run lint # Mapped to `eslint src` in package.json
    npm run slint # `stylelint src` in package.json
    npm run build
  displayName: 'npm install and build'
Run Code Online (Sandbox Code Playgroud)

这是我知道失败的分支上的输出(的一部分) …

pipeline azure devops azure-devops azure-pipelines

4
推荐指数
2
解决办法
1441
查看次数

为什么PowerShell会自动展平数组?

我写了一些pwsh代码

"a:b;c:d;e:f".Split(";") | ForEach-Object { $_.Split(":") }
# => @(a, b, c, d, e, f)
Run Code Online (Sandbox Code Playgroud)

但是我想要这个

// in javascript
"a:b;c:d;e:f".split(";").map(str => str.split(":"))
[ [ 'a', 'b' ], [ 'c', 'd' ], [ 'e', 'f' ] ]
Run Code Online (Sandbox Code Playgroud)

嵌套数组

@(
    @(a, b),
    @(c, d),
    @(e, f),
)
Run Code Online (Sandbox Code Playgroud)

为什么?那我该怎么办

arrays powershell pipeline jagged-arrays

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