如何更改unix管道发送split命令结果的位置?

Mat*_*one 5 unix bash shell pipe

基本上我这样做:

export_something | split -b 1000
Run Code Online (Sandbox Code Playgroud)

它将导出的结果分成文件名xaa,xab,xac,每个1000字节

但我希望我的分割输出进入具有特定前缀的文件.通常我会这样做:

split -b <file> <prefix>
Run Code Online (Sandbox Code Playgroud)

但是当你管道时它没有前缀标志.我正在寻找的是一种方法:

export_something | split -b 1000 <output-from-pipe> <prefix>
Run Code Online (Sandbox Code Playgroud)

那可能吗?

den*_*ane 12

是的,-通常用于表示stdin或stdout,无论哪个更有意义.在你的例子中

export_something | split -b 1000 - <prefix>
Run Code Online (Sandbox Code Playgroud)