我正在尝试在shell提示符下执行以下命令:
nohup sqlplus DB_ID/DB_PWD@DOMAIN @main.sql 490 >> result.out 2>>&1 &
main.sql是一个接受490
作为参数的sql脚本。
我收到错误:
bash: syntax error near unexpected token `&'
语法有什么问题?
答案 0 :(得分:3)
语法错误来自您将STDERR重定向到STDOUT。必需(且唯一有效)的语法是2>&1
。它仍然可以满足您的期望。您在STDOUT重定向中执行的>>
仅对实际文件有帮助,并防止删除文件数据。对于管道重定向,这不是必需的,甚至不允许语法。
最终正确的语法是
nohup sqlplus DB_ID/DB_PWD@DOMAIN @main.sql 490 >> result.out 2>&1 &