bash 更改屏幕标题的命令 window(在屏幕内 session)
bash command to change title of screen window (inside the screen session)
我想通过 bash 命令设置当前屏幕 window(在屏幕 session 内)的标题。
我知道可以通过 C-a A 来完成,但这不能直接用作 shell 命令。
screen -t <mytitle> <args>
在当前 window 中有效,但它创建了一个新的 window。我想重命名当前 window。
我看到的所有帖子要么在 运行 屏幕 session 之外处理此操作,要么使用屏幕 keybindings/commands。
在 gedit 中打开你的 ~/.bashrc 文件
gedit ~/.bashrc
在文件末尾添加以下函数。
# function to set terminal title
function settitle(){
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
重新运行bashrc文件使修改在当前终端生效。之后就不需要了。
source ~/.bashrc
现在使用函数从 shell 重命名终端名称。从 shell 类型
settitle hello
这将命名为 hello。
我使用了 R.k 的变体。 Lohana 使用 python.
的答案
import os;
if __name__=='__main__':
title=sys.argv[1]
info=r'echo -n "3k%s3\"' %(title)
os.system(info)
我想通过 bash 命令设置当前屏幕 window(在屏幕 session 内)的标题。
我知道可以通过 C-a A 来完成,但这不能直接用作 shell 命令。
screen -t <mytitle> <args>
在当前 window 中有效,但它创建了一个新的 window。我想重命名当前 window。
我看到的所有帖子要么在 运行 屏幕 session 之外处理此操作,要么使用屏幕 keybindings/commands。
在 gedit 中打开你的 ~/.bashrc 文件
gedit ~/.bashrc
在文件末尾添加以下函数。
# function to set terminal title
function settitle(){
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
重新运行bashrc文件使修改在当前终端生效。之后就不需要了。
source ~/.bashrc
现在使用函数从 shell 重命名终端名称。从 shell 类型
settitle hello
这将命名为 hello。
我使用了 R.k 的变体。 Lohana 使用 python.
的答案import os;
if __name__=='__main__':
title=sys.argv[1]
info=r'echo -n "3k%s3\"' %(title)
os.system(info)