我有更改终端标题的功能。我希望将其传递给osascript命令。
我试试:
function title {
name=hostname
printf "\033]0;$name %s\007" "$1"
}
osascript -e "tell application \"Terminal\"" \
-e "tell application \"System Events\" to keystroke \"t\" using {command down}" \
-e "do script \"title newTitle \" in front window" \
-e "end tell"
> /dev/null;
它不起作用。
有什么想法吗?
由于
答案 0 :(得分:2)
您的功能是否在.bash_profile
中定义?
如果是这样,这应该工作(下面)。如果没有,您需要添加它,否则您创建的新选项卡不知道该功能。
没有$1
替换的多行脚本可以放在单引号内而不会转义...
osascript -e 'tell application "Terminal"
tell application "System Events" to keystroke "t" using {command down}
do script "title NewTitle" in front window
end tell'
由于在启动新标签页时生成的文字,> /dev/null
似乎没有太大区别。