命令set escape on
将启用转义字符。
SQL> select '\&' from dual;
'
-
&
SQL>
但是当发出host
命令时,我无法理解这种行为。
SQL> host echo foobar aa
foobar aa
SQL> show escape
escape "\" (hex 5c)
SQL> host echo foobar \&
foobar
SQL> host echo foobar '\&'
foobar &
SQL>
为什么使用'\&'
而不仅仅\&
更改输出?
答案 0 :(得分:1)
&安培;是替换字符
&被翻译为这个,只是等待更多(翻译成无)。
SQL> host echo &
SP2-0317: expected symbol name is missing
SQL> host echo 1
1
<- One line returns
SQL> host echo \&
<- two lines return
SQL> host echo 1 & 2
Enter value for 2: 3
1 3