shell 右引号后的额外字符

t30tvxxf  于 2023-08-07  发布在  Shell
关注(0)|答案(1)|浏览(101)

我在MATLAB中运行下面的命令。这段代码基本上是使用命令 nclaunch 在gui模式下启动cadence xcelium模拟器。nclaunch打开xterm,从那里它应该启动xcelium模拟器,但在此之前,我得到的错误。

tclcmds = {  'exec xmvhdl -64bit osc_filter.vhd simple_osc.vhd osc_top.vhd',...
             'exec xmelab -64bit -access +wc osc_top',...
             ['hdlsimmatlab -gui osc_top -64bit ', ...
              ' -input "{@matlabcp :u_osc_filter -mfunc oscfilter}"',...
              ' -input "{@force clk_enable {"1"} -after 0ns}"',...
              ' -input "{@force reset {"0"} -after 0ns {"1"} -after 40ns {"0"} -after 120ns}"',...
              ' -input "{@force clk {"1"} -after 0ns {"0"} -after 40ns -repeat 80ns}"',...
              ' -input "{@simvision  {set w \[waveform new\]}}"',...
              ' -input "{@simvision  {waveform add -using \$w -signals :clk_enable}}"',...
              ' -input "{@simvision  {waveform add -using \$w -signals :clk}}"',...
              ' -input "{@simvision  {waveform add -using \$w -signals :reset}}"',...
              ' -input "{@simvision  {waveform add -using \$w -signals signed(:osc_out)}}"',...
              ' -input "{@simvision  {waveform add -using \$w -signals signed(:filter8x_out)}}"',...
              ' -input "{@simvision  {waveform format -using \$w signed(:osc_out) -trace analogSampleAndHold}}"',...
              ' -input "{@simvision  {waveform format -using \$w signed(:filter8x_out) -trace analogSampleAndHold}}"',...
              ' -input "{@simvision  {waveform axis range -min -50000 -max 50000 -using \$w signed(:osc_out)}}"',...
              ' -input "{@simvision  {waveform axis range -min -1.5e6 -max 1.5e6 -using \$w signed(:filter8x_out)}}"',...  
              ' -input "{@database -open waves -into waves.shm -default}"',...
              ' -input "{@probe -create -shm :clk_enable :clk :reset :osc_out :filter8x_out}"',...
              ' -input "{@run 10000ns}"'
             ]};
nclaunch('tclstart',tclcmds);

字符串
运行上述命令后,我得到以下错误extra characters after close-quote
我不确定这个错误。

knsnq2tg

knsnq2tg1#

看起来这些字符串中的双引号并没有以您期望的方式解释:

' -input "{@force clk_enable {"1"} -after 0ns}"',...
' -input "{@force reset {"0"} -after 0ns {"1"} -after 40ns {"0"} -after 120ns}"',...
' -input "{@force clk {"1"} -after 0ns {"0"} -after 40ns -repeat 80ns}"',...

字符串
例如,第一个字符串可能被解释为以下部分:

    • 输入
  • “-开引号
  • {@force clk_enable { -引号中的字符串
  • “-关闭-引号
  • 1”} -在0 ns}之后”-右引号后的额外字符

我建议尝试:

相关问题