在刚刚创建文件后使用管道打开文件

时间:2014-10-31 01:48:57

标签: linux pipeline cat gedit

我想用管道实现一些非常简单的事情:

步骤1:cat input1 input2>输出

第2步:gedit输出

我能做到

cat input1 input2 > output | gedit output

但我想知道在这种情况下我怎么能省略输入输出文件的名称?所以从cat重定向创建的文件应该是文件gedit open。 谢谢!

2 个答案:

答案 0 :(得分:1)

只需为您的目的定义bash function(例如,如果您希望永久保留,请在~/.bashrc中),例如

 editcat() {
   cat $* > output
   gedit output
 }

您可能希望使用mktemp(1)

将输出文件生成为临时文件,从而使该功能更加精美
 editcat() {
   local editemp=$(mktemp)
   cat $* > $editemp
   gedit $editemp
   rm $editemp
 }

但您可以考虑使用less(1)

答案 1 :(得分:0)

你可以尝试

gedit <(cat file1 file2)

cat input1 input2 | gedit