标签: pipe

在Bash中,当您将多个异步命令传递给一个使用者时会发生什么?

考虑一下这个Bash代码:

(cmd1 & cmd2) | consumer
Run Code Online (Sandbox Code Playgroud)

consumer标准输入可能会出现什么样的情况?

  1. 输出cmd1,然后输出cmd2
  2. 来自cmd1任意点缀的线条来自cmd2
  3. 来自cmd1任意散布的字节来自cmd2
  4. 别的什么?

parallel-processing bash buffer asynchronous pipe

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

Postfix transport_maps和virtual_mailbox

我正在尝试将一个特定地址传递给php脚本,但似乎我的transport_maps没有触发,而是使用了virtual_transport.这是我有的:

@ example.com列在virtual_mailbox_domains中,并且传递到虚拟邮箱的工作正常.

但我需要将foo@example.com的所有消息转发给dovecot-lda(在virtual_transport中指定),但转发给另一个服务.

这是我对virtual_transport的交付方法:

dovecot unix - nn - - pipe flags = DRhu user = vmail:vmail argv =/usr/lib/dovecot/dovecot-lda -f $ {sender} -d $ {recipient}

这是我想管道所有foo@example.com的地方

php_script unix - nn - - pipe flags = Fq user = www-data argv =/home/script.php

postconf -n

alias_database =散列:在/ etc /别名
alias_maps =散列:在/ etc /别名
append_dot_mydomain =无
一击=没有
config_directory是= /等/后缀
dovecot_destination_recipient_limit = 1
mailbox_size_limit = 0
milter_default_action =接受
milter_protocol = 2
mydestination中=本地主机
MYHOSTNAME =本地主机
mynetworks中= 127.0. 0.0/8 [::ffff:127.0.0.0]/104 [:: 1]/128
myorigin =/etc/mailname
non_smtpd_milters …

linux postfix-mta pipe mail-server

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

Linux命令:为什么重定向操作符 - | 即管道在这里失败?

我正在通过Shell(Bash)Scripting的入门读书,并有以下疑问:

  • 为什么以下命令不打印cp's目录的内容:which cp | ls -l

  • 根据定义,管道是否意味着我们将一个命令的输出传递给另一个命令,即重定向输出?

有人可以帮我吗 ?我是新手..

linux bash shell pipe sh

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

Linux:管道`查找`文本文件列表| `dos2unix` | `dd`命令

我正在尝试做什么:

  • 第1行:找到任何.txt或.TXT文件并将它们输入下一个命令
  • 第2行:将.txt文件转换为unix格式(摆脱Windows行结尾)
  • 第3行:删除文件的最后一行,该行始终为空白
find "${TEMPDIR}" -name *.[Tt][Xx][Tt] | /
xargs dos2unix -k | /
dd if=/dev/null of="$_" bs=1 seek=$(echo $(stat --format=%s "$_" ) - $( tail -n1 "$_" | wc -c) | bc )
Run Code Online (Sandbox Code Playgroud)

我无法将(EDIT 输出)文件名传输xargs dos2unix -k | /到第三行,我收到以下错误:

stat: cannot stat '': No such file or directory
tail: cannot open '' for reading: No such file or directory
dd: failed to open '': No such file or directory
Run Code Online (Sandbox Code Playgroud)

显然,我错误地认为这"$_"足以通过管道传递输出.

如何将输出(文本文件)传输xargs …

bash pipe ubuntu-14.04

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

linux中的pipe()函数

我的问题是关于linux中的pipe()函数:http://linux.die.net/man/2/pipe

我的问题是:"linux中只有一个管道吗?".我的意思是,如果我有多个写入管道的进程,它是否是相同的管道,这意味着一旦我从管道读取数据,我可能会在同一个read()操作中从不同进程获取数据?

linux pipe

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

Gulp change src

我有这个任务。首先,我用一个src做一件事。然后我用另一个src做另一件事。如何将它们“合并”为一条管道?

gulp.task('css', function() {
    gulp.src('site/patterns/site/site.scss')
        .pipe(sass().on('error', sass.logError))
        .pipe(autoprefixer())
        .pipe(rename('index.css'))
        .pipe(gulp.dest('assets/css'))
        .pipe(minifyCss())
        .pipe(rev())
        .pipe(gulp.dest('assets/css'))
        .pipe(rev.manifest())
        .pipe(revDel({ dest: 'assets/css' }))
        .pipe(gulp.dest('assets/css'))
        .pipe(notify("CSS generated!"))
    ;
    gulp.src( ['assets/css/index-*.css'], {read: false})
        .pipe( revOutdated() ) // leave 2 recent assets (default value) 
        .pipe( cleaner() );
});
Run Code Online (Sandbox Code Playgroud)

pipe gulp

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

如何将unix命令的输出传递给Julia脚本?

我正在尝试利用STDINJulia 的构造来读取unix命令的输出:

#!/usr/bin/julia
readline(STDIN)
Run Code Online (Sandbox Code Playgroud)

然后在我的终端:

$ cat myfile.txt | ./pipe.jl
Run Code Online (Sandbox Code Playgroud)

但我没有得到任何输出.我究竟做错了什么?

unix pipe julia

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

什么时候和为什么我要关闭管道?

我只是想了解管道,我正在研究一个例子:

#define _XOPEN_SOURCE 700

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
    pid_t p;
    int status;
    int pipefd[2];
    pipe(pipefd);
    p = fork();

    if(p == 0)
    {
        dup2(pipefd[1], 1);
        close(pipefd[0]);
        close(pipefd[1]);

        execlp(argv[1], argv[1], NULL); 
        perror(argv[1]);

        exit(1);
    }

    dup2(pipefd[0], 0);
    close(pipefd[0]);
    close(pipefd[1]);

    execvp(argv[2], argv+2);
    perror(argv[2]);

    return 1;
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这段代码在使用之前关闭了pipefd.

为什么在这里关闭?

c pipe

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

Angular 2 - 使用管道进行字符串转换的数字

我正在尝试使用管道中的typescript将数字值转换为角度为2的字符串.它抱怨

类型字符串不能分配给类型编号

.我的管道如下.

import { Pipe, PipeTransform } from '@angular/core';

@Pipe({ name: 'pxsuffix'

}) export class pxsuffix implements PipeTransform {

transform(input: number): number {

if ((input > 0)) {
    input = input.toString(),
}

return (
    input = input + 'px',

);
}
}
Run Code Online (Sandbox Code Playgroud)

pipe angular

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

管道和错误处理

假设您具有以下功能:

def get_city_temp(city_id) do
   'blahblahcityforcastfortoday.com/request/#{city_id}'
   |> HTTPoison.get
   |> parse_body
   |> get_forecast
   |> get_temp
end
Run Code Online (Sandbox Code Playgroud)

现在说GET失败了,所以响应是:

{:ok, %HTTPoison.Response{status_code: 400, ...}}
Run Code Online (Sandbox Code Playgroud)

但是get_forecast期待一个形成良好的身体,因此会抱怨传递给它的结构,或丢失的钥匙等.处理这样的错误的最佳方法是什么?在其他语言中,我只是将所有函数调用包装在try catchs中,并返回带有成功报告的元组.在这种情况下,我不确定如何构建我的代码以最好地向用户报告错误.

error-handling exception-handling pipe elixir

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