bash - 如何<重定向输入,然后>将输出重定向到文件

时间:2015-10-04 20:24:39

标签: bash redirect

所以我在Bash上尝试这个命令:

sqlite3 my_db <<!
    .header on
    .mode csv
    select * from table;
!

可行,但我想将该输出重定向到output.csv

sqlite3 my_db <<!
    .header on
    .mode csv
    select * from table;
! > output.csv

...但是bash似乎认为我没有完成命令:

...
$ >
$ >
$ > ^C
$

Bash对我有什么要求?为什么我无法将输出重定向到我的.csv文件?

由于

2 个答案:

答案 0 :(得分:4)

你可以这样做:

sqlite3 my_db <<!  > output.csv
    .header on
    .mode csv
    select * from table;
!

您的最后一行应仅包含结尾字符。

答案 1 :(得分:3)

如果每个人使用不同的FD,Bash并不十分关心指定的重定向顺序。

sqlite3 my_db > output.csv <<!
 ...
!