>我正在尝试使用以下方法将存储在变量中的SQL输出回显到.csv文件中:
sql=$(sqlplus -s $user/$pass@$db << EOF
SELECT DISTINCT id, customer
FROM orders;
exit;
EOF
)
echo $sql > tmp.csv
当我打开.csv输出都在一行上时?
在 SQL*Plus 中使用 SPOOL
不是一种选择,需要像上面那样做一些方法。
如何让它显示为.csv,而不是在一行上?
在 shell 变量中使用双引号:
echo "$sql" > tmp.csv
如果没有引号,所有换行符都转换为空格。