【发布时间】:2020-02-23 02:15:06
【问题描述】:
如果我管这个脚本:
me:~/git/my-project$ find . -type f -not -path '*bin*' -name '*ignored*sql' -exec cat {} \;
dsadadasda SELECT * FROM some_table;
像这样进入sqlplus:
me:~/git/my-project$ find . -type f -not -path '*bin*' -name '*ignored*sql' -exec cat {} \; | sqlplus $my_connection_string | grep -i unknown
SQL> SP2-0734: unknown command beginning "dsadadasda..." - rest of line ignored.
然后错误进入STDOUT 而不是STDERR:
me:~/git/my-project$ find . -type f -not -path '*bin*' -name '*ignored*sql' -exec cat {} \; | sqlplus $my_connection_string 1>/dev/null
me:~/git/my-project$
有没有办法配置sqlplus 做其他事情?
【问题讨论】:
-
您能否将 stdout 重定向到 stderr,就像您将 stdout 重定向到 /dev/null 一样? 1>&2
-
我不确定这有什么帮助,因为错误仍然与(应该是什么)常规输出混合在一起。
-
SQL*Plus 不会将输出分开到 stdout 和 stderr。
-
这可能是适合您的解决方案:stackoverflow.com/questions/818255/…
-
这可能是您的解决方案stackoverflow.com/questions/818255/…