练习shell 脚本时候遇到的疑问,请教下。

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

练习shell 脚本时候遇到的疑问,请教下。

#1

帖子 wnryp » 2011-05-27 13:21

以下是在wiki上学习shell时遇到的一个例子,可是当我运行完了后好像不起作用阿,
终端的标题并没有改变,可以说是没有任何效果。
然后我将

代码: 全选

echo -e "33]0;$107"
这句单独拿出来在终端运行也没有任何效果
我去网上查寻相关资料,最后找到一句这样子的代码:

代码: 全选

export PROMPT_COMMAND='echo -ne "\033]0;qqq\007"'
这句直接在终端运行可一改变终端的标题,但是放在shell里面,然后运行shell就不行了,应该是只对当前终端会话有效,
我现在疑问就是这个例子其实本来就是运行看不到任何效果?
还是我哪里出问题了?
烦请指教阿,谢谢!

代码: 全选

#下面是一个名为xtitlebar的脚本,它可以改变终端窗口的名称。这里使用了一个名为help的函数,该函数在脚本中使用了两次:

#!/bin/sh
# vim: set sw=4 ts=4 et:
help()
{
cat << HELP
xtitlebar -- change the name of an xterm, gnome-terminal or kde konsole
USAGE: xtitlebar [-h] "string_for_titelbar"
OPTIONS: -h help text
EXAMPLE: xtitlebar "cvs"
HELP
exit 0
}
# in case of error or if -h is given we call the function help:
[ -z "$1" ] && help
[ "$1" = "-h" ] && help
# send the escape sequence to change the xterm titelbar:
echo -e "33]0;$107"
# 
上次由 wnryp 在 2011-05-30 13:56,总共编辑 1 次。
海到无边天作岸,山登绝顶我为峰!
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 联系shell 脚本时候遇到的疑问,请教下。

#2

帖子 eexpress » 2011-05-27 15:11

这就是修改标题的。
\e]2;
● 鸣学
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

Re: 联系shell 脚本时候遇到的疑问,请教下。

#3

帖子 wnryp » 2011-05-30 14:03

eexpress 写了:这就是修改标题的。
\e]2;
谢谢您的回复,您说的命令是这么输入的吗:

代码: 全选

echo -e \e]2;


输入后直观上还不没有任何响应。
001.jpg
001.jpg (15 KiB) 查看 566 次
上次由 wnryp 在 2011-05-31 17:06,总共编辑 1 次。
海到无边天作岸,山登绝顶我为峰!
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

Re: 练习shell 脚本时候遇到的疑问,请教下。

#4

帖子 wnryp » 2011-05-31 17:02

001.jpg
海到无边天作岸,山登绝顶我为峰!
tusooa
帖子: 6546
注册时间: 2008-10-31 22:12
系统: 践兔
送出感谢: 6 次
接收感谢: 10 次
联系:

Re: 练习shell 脚本时候遇到的疑问,请教下。

#5

帖子 tusooa » 2011-06-08 16:20

er,\e]0是xterm的.你用gnome-terminal当然没用了
输出的内容要加引号.

代码: 全选

] ls -ld //
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

Re: 练习shell 脚本时候遇到的疑问,请教下。

#6

帖子 wnryp » 2011-06-08 16:28

tusooa 写了:er,\e]0是xterm的.你用gnome-terminal当然没用了
输出的内容要加引号.
那gnome-terminal应该是怎样的命令呢? 谢谢~
海到无边天作岸,山登绝顶我为峰!
头像
lilydjwg
论坛版主
帖子: 4165
注册时间: 2009-04-11 23:46
系统: Arch Linux
送出感谢: 11 次
接收感谢: 127 次
联系:

Re: 练习shell 脚本时候遇到的疑问,请教下。

#7

帖子 lilydjwg » 2011-06-08 18:24

以下脚本可以使终端在 3 秒钟内更改标题为 test。

代码: 全选

echo -ne "\e]0;test\a" >&2 && sleep 3
\e]0;改为\e]2;也可以。

如果使用fish,要把\e改成\x1b,因为 fish 不支持这个转义。
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

Re: 练习shell 脚本时候遇到的疑问,请教下。

#8

帖子 wnryp » 2011-06-08 19:45

lilydjwg 写了:以下脚本可以使终端在 3 秒钟内更改标题为 test。

代码: 全选

echo -ne "\e]0;test\a" >&2 && sleep 3
\e]0;改为\e]2;也可以。

如果使用fish,要把\e改成\x1b,因为 fish 不支持这个转义。

好的,我明天去了试下,非常感谢!
海到无边天作岸,山登绝顶我为峰!
头像
wnryp
帖子: 35
注册时间: 2008-11-11 16:51
送出感谢: 0
接收感谢: 0

Re: 练习shell 脚本时候遇到的疑问,请教下。

#9

帖子 wnryp » 2011-06-09 9:26

lilydjwg 写了:以下脚本可以使终端在 3 秒钟内更改标题为 test。

代码: 全选

echo -ne "\e]0;test\a" >&2 && sleep 3
\e]0;改为\e]2;也可以。

如果使用fish,要把\e改成\x1b,因为 fish 不支持这个转义。

非常感谢。可以了~我又试了下 :

代码: 全选

echo -ne "\033]0;qqq\007" >&2 && sleep 3
也OK拉·谢谢指教~ :em11
海到无边天作岸,山登绝顶我为峰!
回复

回到 “Shell脚本”