转义字符在gnome-shell中不起作用

时间:2012-11-10 08:05:05

标签: shell terminal gnome-terminal

如果我使用

在我自己的终端中运行代码
  sh projectbingo.sh 

显示为:

Hello World

hi

当我运行以下代码时:

 gnome-terminal  --window-with-profile=tushar -x ./projectbingo.sh

新终端弹出但显示:

./projectbingo.sh: line 3: $'\E[H\E[2J': command not found
./projectbingo.sh: line 23: $'\E[H\E[2J': command not found
./projectbingo.sh: line 77: $'\E[H\E[2J': command not found
Got bus address:  "unix:abstract=/tmp/dbus-  3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
Connected to accessibility bus at:  "unix:abstract=/tmp/dbus-    3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
 Registered DEC:  true 
./projectbingo.sh: line 79: $'\E[H\E[2J': command not found  
Got bus address:  "unix:abstract=/tmp/dbus-3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
Connected to accessibility bus at:  "unix:abstract=/tmp/dbus-3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
Registered DEC:  true 
./projectbingo.sh: line 82: $'\E[H\E[2J': command not found
./projectbingo.sh: line 107: $'\E[H\E[2J': command not found
Got bus address:  "unix:abstract=/tmp/dbus-3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
Connected to accessibility bus at:  "unix:abstract=/tmp/dbus-3G1IPFUIn6,guid=85293fb9a05e2828c07c371800000364" 
Registered DEC:  true 
./projectbingo.sh: line 110: $'\E[H\E[2J': command not found
./projectbingo.sh: line 116: $'\E[H\E[2J': command not found
 Hello World\n\nhi

请帮助!!!

2 个答案:

答案 0 :(得分:1)

这不是终极问题。我怀疑是一个shell问题。

具体来说,$'...'表示法是特定于bash的扩展程序,但您只是按sh而不是bash运行该脚本,因此不适用。

尝试将脚本中的shebang行更改为

#!/bin/bash

答案 1 :(得分:0)

这不是特定于shell的问题。我不知道为什么会这样......但是当我使用

   echo -e "Hello World\nHi"

有效 但是,当我尝试运行sh projectbingo.sh时,它会显示

-e Hello World 喜

所以我的问题已经解决但导致新问题的到来