我想用管道实现一些非常简单的事情:
步骤1:cat input1 input2>输出
第2步:gedit输出
我能做到
cat input1 input2 > output | gedit output
但我想知道在这种情况下我怎么能省略输入输出文件的名称?所以从cat重定向创建的文件应该是文件gedit open。 谢谢!
答案 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